Javascript must be enabled to download our products and perform other essential functions on the website.

ionicons-v5-m
ionicons-v5-j
Buy Now Download Free Trial
ionicons-v5-m
ionicons-v5-f

External API

PA Storage Monitor has a simple API for automating some basic operations.

Security

To protect the system from un-authorized requests, there are two security precautions that are required:

  • SSL - SSL must be enabled for the embedded HTTP server. This can be done on the HTTP Settings dialog.

  • API Key - The API Key registry setting must be set. This is analogous to a username/password. Under HKEY_LOCAL_MACHINE\software\PAStorageMonitor, create a value named API_KEY. Set it to a long string value of random characters.

Requests are made via HTTPS. The format of the requests is:

https://{server}:{port}?KEY={API Key}&API={command}

Additional optional parameters can be appended to the URL using the pattern:

&{param_name}={value}

Return Values

All API commands return data as simple text. Successful commands return as XML, or in the following format:

:START:
{returned data
can be multiple lines}
:END:

All errors are returned as:

:ERROR:{error text}

ionicons-v5-h

IDs: Some of the requests below take a Group ID, Computer ID and/or Monitor ID. You can get IDs via:

  • In the Console by enabling View > Show Object IDs in Navigation Tree
  • Get them programatically by using the following requests:
    • Group IDs : GET_GROUP_LIST
    • Computer IDs: GET_SERVER_LIST
    • Monitor IDs: GET_MONITOR_INFO
  • Querying the ConfigComputerInfo or ConfigGroupInfo tables in the database. Monitor IDs are not available this way.

API Commands

Below are the supported commands. The command name should be inserted where {command} is shown in the example above.

Group Commands
Server/Device Commands
Monitor Commands
Action Commands
Miscellaneous Commands

Group Commands


GET_GROUP_LIST

Returns a list of groups, with their name, full path name, group ID, and group ID for the group's parent.

Optional Parameters
XML = {0|1} - defaults to 0

Example

https://server:81?KEY=mysecretkey&API=GET_GROUP_LIST

Output (name|full path|id|parentID)

:START:
Servers/Devices|Servers/Devices|0|-1
Boston|Servers/Devices^Boston|1|0
Office|Servers/Devices^Office|2|0
Dev|Servers/Devices^Office^Dev|3|2
:END:

XML Example

https://server:81?KEY=mysecretkey&API=GET_GROUP_LIST&XML=1

XML Output

<?xml version="1.0" ?>
<groups>
  <group name="Servers/Devices" path="Servers/Devices" id="0" parentID="-1" />
  <group name="Boston" group="Servers/Devices^Boston" id="1" parentID="0" />
  <group name="Office" group="Servers/Devices^Office" id="2" parentID="0" />
  <group name="Dev" group="Servers/Devices^Office^Dev" id="3" parentID="2" />
</groups>

ADD_GROUP

Add the given group if it doesn't already exist

Required Parameters
NAME - Full of the group name. For example, a group named "Exchange Servers" under the top "Servers\Devices" would set NAME to Servers\Devices^Exchange%20Servers (delimit groups with ^, URL encode, so a space becomes %20)

Example

https://server:81?KEY=mysecretkey&API=ADD_GROUP&NAME=Servers\Devices^New%20York^Web

Output

:OK:
123

The 123 above is the new Group ID (referred to as GID in some other functions)

DELETE_GROUP

Delete the named group. If it contains child groups or servers, they will become orphaned and moved to the top Servers\Devices group the next time the monitoring service is restarted.

Required Parameters
NAME - Full of the group name. For example, a group named "Exchange Servers" under the top "Servers\Devices" would set NAME to Servers\Devices^Exchange%20Servers (delimit groups with ^, URL encode, so a space becomes %20)

Example

https://server:81?KEY=mysecretkey&API=DELETE_GROUP
&NAME=Servers\Devices^New%20York^Web

Output

:OK:

GET_GROUP_PROP

Retrieves a custom property on a group. If the property is not defined, an empty value is returned.

Required Parameters
GID - Group ID for the group to target for the operation.

PROPNAME - Name of the property to retrieve

Example

https://server:81?KEY=mysecretkey&API=GET_GROUP_PROP&GID=0&PROPNAME=ONCALL

Output

:START:
555-555-1234
:END:

SET_GROUP_PROP

Sets a custom property on a group. If the property value is empty, the custom property is removed.

Required Parameters
GID - Group ID for the group to target for the operation.

PROPNAME - Name of the property to set
PROPVAL - Value of the property to set

Example

https://server:81?KEY=mysecretkey&API=SET_GROUP_PROP&GID=0
&PROPNAME=ONCALL&PROPVAL=555-555-1234

Output

:OK:

GET_NOTES

Gets the Notes from a Server/Device or from a Group

Required Parameters
CID - Computer ID for the computer to retrieve notes from.
- or -
GID - Group ID for the group to retrieve notes from.
PATH - File that the notes will be saved into. This needs to be accessible to the Central Monitoring Service (a local file).

Example

https://server:81?KEY=mysecretkey&API=GET_NOTES&CID=125&PATH=C:\Notes\Comp125Notes.txt

Output

:OK:

SET_NOTES

Sets the Notes for a Server/Device or for a Group

Required Parameters
CID - Computer ID for the computer to retrieve notes from.
- or -
GID - Group ID for the group to retrieve notes from.
PATH - File that the notes will be read from. This needs to be accessible to the Central Monitoring Service (a local file).

Example

https://server:81?KEY=mysecretkey&API=SET_NOTES&CID=125&PATH=C:\Notes\Comp125Notes.txt

Output

:OK:

START_MAINTENANCE

Put server(s) or a monitor into immediate maintenance mode.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
GID - Group ID for the group that contains target computers (including those in child-groups).
- or -
MID - Monitor ID for the specific monitor that should be affected.

MINUTES - time in minutes that the server should remain in maintenance mode before it automatically reverts to normal monitoring

Optional Parameters
FORCE - 1 to allow the maintenance window to be shortened. Defaults to 0

Example

https://server:81?KEY=mysecretkey&API=START_MAINTENANCE&CID=37&MINUTES=15&FORCE=1

Output

:OK:

END_MAINTENANCE

Put server(s) or a monitor back into normal monitoring mode.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
GID - Group ID for the group that contains target computers (including those in child-groups).
- or -
MID - Monitor ID for the specific monitor that should be affected.

Example

https://server:81?KEY=mysecretkey&API=END_MAINTENANCE&CID=37

Output

:OK:

Server/Device Commands


GET_SERVER_LIST

Returns a list of servers and the group that the server is in. The XML version also shows the computer's internal ID.

Optional Parameters
XML = {0|1} - defaults to 0
GID = {group ID}, defaults to 0 (top Servers/Devices group).
ALL = {0|1} - 0 means just return the servers directly in the group, 1 returns all servers in all sub-groups as well

Example

https://server:81?KEY=mysecretkey&API=GET_SERVER_LIST

Output (server|group^group)

:START:
DNVISTA|Servers/Devices
192.168.2.5|Servers/Devices
POWERADMIN.COM|Servers/Devices^Boston
OPSMON02|Servers/Devices^Servers^Office
ARCHIVE|Servers/Devices
:END:

XML Example

https://server:81?KEY=mysecretkey&API=GET_SERVER_LIST&XML=1

XML Output

<?xml version="1.0" ?>
<servers>
  <server name="DNVISTA" group="Servers/Devices^Boston^Servers" id="1" groupID="1" alias="DNVISTA" status="ok" />
  <server name="192.168.2.5" group="Servers/Devices^Kansas City" id="2" groupID="2" alias="EXCHANGE" status="maintenance" />
  <server name="POWERADMIN.COM" group="Servers/Devices^External" id="4" groupID="3" alias="POWERADMIN.COM" status="disabled" />
  <server name="OPSMON02" group="Servers/Devices^Boston^Servers" id="5" groupID="1" alias="OPS" status="unlicensed" />
  <server name="ARCHIVE" group="Servers/Devices^Boston^Servers" id="8" groupID="1" alias="ARCHIVE" status="sat_disconnected" />
</servers>

Note that all possible values of 'status' are shown above

LOOKUP_CID

Given a device hostname or IP address, looks up the device and returns the Computer ID (CID) which is used in many other API calls.

Required Parameters
NAME - Host name or IP address of the target server.

Example

https://server:81?KEY=mysecretkey&API=LOOKUP_CID&NAME=FS01

Output

:OK:
42
ADD_SERVER

Add and optionally configure the named server

Required Parameters
SERVER - name of the server that should be added. If the server already exists, it will be operated on (WIN, WMI and GROUP will not have an effect in that case).

Optional Parameters
ALIAS={new alias|CLEAR_ALIAS} - If set to CLEAR_ALIAS, deletes the alias. Otherwise sets the alias to the new value. If the value is blank or ALIAS is not sent, no changes to the alias are made.

WIN={0|1} - defaults to 0. Set to 1 if this is a Windows server.

WMI={0|1} - defaults to 0. Set to 1 if WMI polling should happen to collect System Details information for the server status report

CONFIG_PATH - defaults to none. Full path to a .cxml config file that specifies a configuration that should be applied to the new server. .cxml files are created by exporting a computer's configuration, or by using the EXPORT_SERVER API below. The file must be on the same computer as PA Storage Monitor is running on.

GROUP - defaults to none (which implies the top level group). The full path to the group that the server should be placed in, for example: Servers/Devices^Seattle^Exchange Servers (where the ^ delimits group names).

SATID - Satellite ID. Defaults to the Central Service. Satellite IDs can be obtained in the Console by looking at the Satellite's status report. They generally look something like: 51fa284a-58d6-41a0-870e-1cbd7db6c12a

GETID={0|1} - defaults to 0. If set to 1, this function will wait (possibly a long time) until the new device is added so the Computer ID (CID) value can be returned.

Example

https://server:81?KEY=mysecretkey&API=ADD_SERVER&SERVER=MAILSRV2&WIN=1&WMI=1&GETID=1
&CONFIG_PATH=C:\Configs\Mail+Config.cxml

Output

:OK:
471

The 471 above is the newly created Computer ID (CID) that is returned because GETID=1. Without GETID=1, the Output would simply be :OK:

DELETE_SERVER

Delete the named server, along with all of its monitors

Required Parameters
CID - Computer ID for the computer to target for the operation.
{deprecated} SERVER - name of the server that should be deleted

Example

https://server:81?KEY=mysecretkey&API=DELETE_SERVER&CID=125

Output

:OK:

EXPORT_SERVER

Exports the configuration of the specified server in a .cxml file. Per-server passwords (if any) are NOT exported.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
SERVER - Name of the computer to target. If there are multiple computers with the same name (perhaps at different locations), which one is returned is not defined.

Optional Parameters
PATH - Full path to the output file. If this is not given, the file will be saved to C:\Program Files\PA Storage Monitor\Config\Backup\Export_Computer_{CID}.cxml

Note: Be careful where these files are saved as some monitor configurations might contain sensitive information.

Example

https://server:81?KEY=mysecretkey&API=EXPORT_SERVER&CID=125

Output

:OK:

GET_SERVER_PROP

Retrieves a custom property on a server. If the property is not defined, an empty value is returned.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
SERVER - Name of the computer to target. If there are multiple computers with the same name (perhaps at different locations), which one is returned is not defined.
PROPNAME - Name of the property to retrieve Multiple properties can be passed in a comma separated list.

Example (single property)

https://server:81?KEY=mysecretkey&API=GET_SERVER_PROP&CID=125&PROPNAME=Customer

Example (multiple properties)

https://server:81?KEY=mysecretkey&API=GET_SERVER_PROP&CID=125&PROPNAME=Customer,ID,Phone

Output

:START:
IBM
51434
555-555-1234
:END:

Example (ID property not defined on target)

https://server:81?KEY=mysecretkey&API=GET_SERVER_PROP&CID=125&PROPNAME=Customer,ID,Phone

Output

:START:
IBM

555-555-1234
:END:

Output

:START:
IBM
:END:

SET_SERVER_PROP

Sets a custom property on a server. If the property value is empty, the custom property is removed.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
SERVER - Name of the computer to target. If there are multiple computers with the same name (perhaps at different locations), which one is returned is not defined.
PROPNAME - Name of the property to set
PROPVAL - Value of the property to set

Example

https://server:81?KEY=mysecretkey&API=SET_SERVER_PROP&CID=125
&PROPNAME=Customer&PROPVAL=IBM

Output

:OK:

ionicons-v5-h

The Custom Property DISPLAYED_NOTES is the value you can set by right-clicking a computer and selecting Notes. Notes show up at the top of a Server Status Report.

GET_NOTES

Gets the Notes from a Server/Device or from a Group

Required Parameters
CID - Computer ID for the computer to retrieve notes from.
- or -
GID - Group ID for the group to retrieve notes from.
PATH - File that the notes will be saved into. This needs to be accessible to the Central Monitoring Service (a local file).

Example

https://server:81?KEY=mysecretkey&API=GET_NOTES&CID=125&PATH=C:\Notes\Comp125Notes.txt

Output

:OK:

SET_NOTES

Sets the Notes for a Server/Device or for a Group

Required Parameters
CID - Computer ID for the computer to retrieve notes from.
- or -
GID - Group ID for the group to retrieve notes from.
PATH - File that the notes will be read from. This needs to be accessible to the Central Monitoring Service (a local file).

Example

https://server:81?KEY=mysecretkey&API=SET_NOTES&CID=125&PATH=C:\Notes\Comp125Notes.txt

Output

:OK:

START_MAINTENANCE

Put server(s) or a monitor into immediate maintenance mode.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
GID - Group ID for the group that contains target computers (including those in child-groups).
- or -
MID - Monitor ID for the specific monitor that should be affected.

MINUTES - time in minutes that the server should remain in maintenance mode before it automatically reverts to normal monitoring

Optional Parameters
FORCE - 1 to allow the maintenance window to be shortened. Defaults to 0

Example

https://server:81?KEY=mysecretkey&API=START_MAINTENANCE&CID=37&MINUTES=15&FORCE=1

Output

:OK:

END_MAINTENANCE

Put server(s) or a monitor back into normal monitoring mode.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
GID - Group ID for the group that contains target computers (including those in child-groups).
- or -
MID - Monitor ID for the specific monitor that should be affected.

Example

https://server:81?KEY=mysecretkey&API=END_MAINTENANCE&CID=37

Output

:OK:

SERVER_ENABLE

Enables or disables the server (disabling a server disables all monitors for that device)

Required Parameters
CID - Computer ID for the computer to target for the operation.
ENABLE - Set to 1 to enable monitoring, or 0 to disable monitoring

Example

https://server:81?KEY=mysecretkey&API=SERVER_ENABLE&CID=42&ENABLE=0

Output

:OK:

GOTO_SERVER_REPORT

Pass a server name and get forwarded to that server's status report

Required Parameters
CID - Computer ID for the computer to target for the operation.
{deprecated} SERVER - name of the server

Example

https://server:81?KEY=mysecretkey&API=GOTO_SERVER_REPORT&CID=362

Output
Browser gets redirected to the given server's status report page

Monitor Commands


GET_MONITOR_INFO

Returns information about all monitors owned by a particular computer.

Required Parameters
CID - Computer ID for the computer to target for the operation. ALL can be used to return information all monitors

Optional Parameters
FORMAT_DATE - 0 to always output as dd-mm-yyyy hh:mm:ss (24 hour hh), or 1 to use the same format that the existing reports use (which can be customized). Defaults to 0.
STATUS - a comma separated list of monitor statuses. Only monitors that are currently the specified status will be returned. See status values in the table at the bottom of the page.

Example

https://server:81?KEY=mysecretkey&API=GET_MONITOR_INFO&CID=371
&FORMAT_DATE=1
https://server:81?KEY=mysecretkey&API=GET_MONITOR_INFO&CID=ALL
&STATUS=2,10,17,18,19

Output (XML)

<?xml version="1.0" ?>
<monitors>
   <monitor id="105047" status="OK" depends_on="" title="DNS Check: Yahoo" lastRun="24-02-2023 11:22:45" nextRun="24-02-2023 11:23:45" errText="[yahoo.com resolving to 74.6.143.26] " errActionIDs="12" fixedActionIDs="12" inErrSeconds="0" monitorType="DNS Monitor" monitorKind="M" owningCompID="31" owningGroupID="0"/>    <monitor id="111981" status="OK" depends_on="" title="Check directory size at E:\Hyper-V" lastRun="24-02-2023 11:19:06" nextRun="24-02-2023 11:24:06" errText="[Last size: 112 GB] " errActionIDs="" fixedActionIDs="" inErrSeconds="0" monitorType="File/Dir Size" monitorKind="M" owningCompID="31" owningGroupID="0"/>    <monitor id="118722" status="OK" depends_on="" title="Core - Ping Monitor" lastRun="" nextRun="" errText="" errActionIDs="" fixedActionIDs="" inErrSeconds="0" monitorType="Ping" monitorKind="T" owningCompID="0" owningGroupID="98"/>
</monitors>

Notes:
* monitorKind can be "M" for a typical monitor, "T" for a monitor template, "MT" for a monitor that derives from a template, or "G" for a global monitor.
* owningComputerID will be 0 for templates (T) and global monitors (G)
* owningGroupID will only be non-zero for monitor templates (T)

GET_MONITOR_CONFIG

Retrieves a monitor's XML configuration. This can also be retrieve manually in the Console by first enabling the Console_ShowExportMonitor option in Advanced Services > Advanced Settings. Once that is done, you can right-click a monitor and click the new Export Monitor Configuration menu option.

Required Parameters
MID - Monitor ID for the target monitor

Example

https://server:81?KEY=mysecretkey&API=GET_MONITOR_CONFIG&MID=198709

Output
The XML configuration data is returned which will look similar to:

<?xml version="1.0"?><checksum value="3272823308">
<Obj-Monitor2 ver="3">
...

SET_MONITOR_CONFIG

Set the configuration of a monitor to new values. Often this XML would have been retrieved using GET_MONITOR_CONFIG or from the Console.

Required Parameters
MID - Monitor ID for the target monitor
CONFIG - The monitor configuration XML

ionicons-v5-h

Important: If the XML is not valid, there is a chance the monitoring service will crash when loading the monitor. Great care should be used in manipulating the XML. If the service crashes, you may need to restore from the configuration backup which is stored in the Config\Backup folder.

In addition, because of the format and size of the typical monitor XML, this API usually needs to be called via a POST rather than a GET.

Example

wget.exe --no-check-certificate --post-file=C:\Data\SetMonitor.txt https://localhost:81

See the contents of SetMonitor.txt to see the URL-encoded content that is sent as a form post.

Note that at the top you'll see the familiar

KEY=mysecretkey&API=SET_MONITOR_CONFIG&MID=198709&CONFIG={encoded XML}

Output

:OK:
ADD_MONITOR

Adds a new monitor to a server. Often this XML would have been retrieved using GET_MONITOR_CONFIG or from the Console.

Required Parameters
CID - Target Computer ID for the computer that the monitor will be added to
CONFIG - The monitor configuration XML

ionicons-v5-h

Important: If the XML is not valid, there is a chance the monitoring service will crash when loading the monitor. Great care should be used in manipulating the XML. If the service crashes, you may need to restore from the configuration backup which is stored in the Config\Backup folder.

In addition, because of the format and size of the typical monitor XML, this API usually needs to be called via a POST rather than a GET.

Example

wget.exe --no-check-certificate --post-file=C:\Data\AddMonitor.txt https://localhost:81

See the contents of AddMonitor.txt to see the URL-encoded content that is sent as a form post.

Note that at the top you'll see the familiar

KEY=mysecretkey&API=ADD_MONITOR&CID=3579&CONFIG={encoded XML}

Output

:OK:
456

The 456 above is the newly added Monitor ID (referred to as MID in other functions)

MONITOR_ENABLE

Enables or disables the monitor

Required Parameters
MID - Monitor ID for the monitor to target for the operation.
ENABLE - Set to 1 to enable monitoring, or 0 to disable monitoring

Example

https://server:81?KEY=mysecretkey&API=MONITOR_ENABLE&MID=1312&ENABLE=0

Output

:OK:

START_MAINTENANCE

Put server(s) or a monitor into immediate maintenance mode.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
GID - Group ID for the group that contains target computers (including those in child-groups).
- or -
MID - Monitor ID for the specific monitor that should be affected.

MINUTES - time in minutes that the server should remain in maintenance mode before it automatically reverts to normal monitoring

Optional Parameters
FORCE - 1 to allow the maintenance window to be shortened. Defaults to 0

Example

https://server:81?KEY=mysecretkey&API=START_MAINTENANCE&CID=37&MINUTES=15&FORCE=1

Output

:OK:

END_MAINTENANCE

Put server(s) or a monitor back into normal monitoring mode.

Required Parameters
CID - Computer ID for the computer to target for the operation.
- or -
GID - Group ID for the group that contains target computers (including those in child-groups).
- or -
MID - Monitor ID for the specific monitor that should be affected.

Example

https://server:81?KEY=mysecretkey&API=END_MAINTENANCE&CID=37

Output

:OK:

RUN_NOW

Request the specified monitor be run immediately

Required Parameters
MID - Monitor ID for the monitor to run immediately.

Optional Parameters
FORCE - 1 to run the monitor even if it's disabled or the server is in maintenance. Defaults to 0

Example

https://server:81?KEY=mysecretkey&API=RUN_NOW&MID=4721&FORCE=1

Output

:OK:

Action Commands


GET_ACTION_INFO

Returns a list describing all the actions in the system (these IDs are used in the errorActionIDs and fixedActionIDs attributes returned from GET_MONITOR_INFO

Example

https://server:81?KEY=mysecretkey&API=GET_ACTION_INFO

Output (XML)

<?xml version="1.0" ?>
<actions>
  <action id="1" type="Message Box" typeID="3" title="Message Box" />
  <action id="2" type="Write to a Text Log File" typeID="6" title="Write to ServerEvents.txt log file" />
  <action id="6" type="Start, Stop or Restart a Service" typeID="5" title="Restart stopped service on monitored computer" />
</actions>

Miscellaneous Commands


ACK_ALERT

Acknowledge an alert

Required Parameters
ERRID - The Error ID for the alert. This can be shown in Error Audit reports, or shown on the Server Status report

Optional Parameters
ACKALERTS - 1 to send any Acknowledge alerts attached to the monitor, or 0 to suppress sending them. Defaults to 0.
ACKBY - Name to list as the person doing the acknowledgement. By default it will show "External API". The IP address of the caller will be appended.

Example

https://server:81?KEY=mysecretkey&API=ACK_ALERT&ERRID=4172&ACKBY=Robert

Output

:OK:

CREATE_CHART

Creates a chart jpeg file similar to those shown in the server status reports. The chart image will be in the Reports\Temp folder. The caller is responsible for deleting the file when done using it.

Required Parameters
STATID - statistic ID to be charted. The StatID value can be found in the Statistic table, StatID column.
MONTYPE - Monitor type. This is the value from the OwnerType column in the Statistic table.

Optional Parameters
NONZEROBASE - The y-axis of most charts starts at 0. Set this to 1 to indicate the chart should pick a better axis starting point. Defaults to 0
MINUTES - The number of minutes back to chart. Defaults to 1440 (one day)
SUMMARIZATION - Control how the data is summarized, using a value from the below chart. Defaults to 25 (5-minute maximum)

Chart raw values0
Minute minimum 15
Minute average 14
Minute maximum 16
5-Minute minimum24
5-Minute average23
5-Minute maximum25
Hourly minimum 5
Hourly average 1
Hourly maximum 6
Daily minimum 7
Daily average 2
Daily maximum 8
Weekly minimum 9
Weekly average 3
Weekly maximum 10
Monthly minimum 11
Monthly average 4
Monthly maximum 12
Yearly minimum 18
Yearly average 17
Yearly maximum 19

UNIT - The unit from the table below. Used for display and scaling if needed. Defaults to 15 (generic number)
Generic number15
Bytes 1
KB 2
MB 3
GB 4
TB 12
PB 13
EB 14
Bps 11
Kbps 17
Mbps 18
Gbps 19
Tbps 20
Scale dynamically5
Percentage 6
milliseconds 7
Temperature in C 9
Lux 10

COLOR - HTML color for the line. Defaults to #000080
TITLE - Override the title for the chart. Uses the statistic's name by default
FILENAME - Filename only (no path). All files are stored in the Reports\Temp folder. A default name will be chosen if one is not given.
WIDTH - width in pixels. Defaults to 345 wide x 175 high. Either both WIDTH and HEIGHT need to be given, or neither should be given.
HEIGHT - height in pixels.

Example

https://server:81?KEY=mysecretkey&API=CREATE_CHART&STATID=4812&MONTYPE=8
&MINUTES=180&COLOR=008000&WIDTH=1000&HEIGHT=500&TITLE=My+Chart+Title

Output

:OK:
C:\Program Files\PA Storage Monitor\Reports\Temp\SingleChart_48127.jpg

GET_PERF_STATS

Returns internal monitoring system performance metrics.

Note that these can also be enabled and retrieved as Windows performance counters. For the list of values returned, the first column is the performance ID, the second column is the name, and the third column is the performance value.

To see what statistics are available, call the API without an IDS parameter.

Required Parameters
NONE

Optional Parameters
IDS - comma separated list of performance IDs to return. If IDS is not give, all performance values are returned.

Example

https://server:81?KEY=mysecretkey&API=GET_PERF_STATS&IDS=68,69

Output

:OK:
68 FileSightRecsHandled 3289
69 TotalMonitorsRun 1070110

DISCOVERY_CONFIG

Scan an IP address range for new servers that aren't being monitored, and run Smart Config for the new servers. The Discovery and Smart Config procedures can take some time, so an OK result means that the process has been started.

Required Parameters
START - Start of IP address range
END - End of IP address range

Example

https://server:81?KEY=mysecretkey&API=DISCOVERY_CONFIG&START=192.168.0.1
&END=192.168.0.254

Output

:OK:

DO_BACKUP

Once a day and any time the monitoring service starts, the configuration is backed up to C:\Program Files\PA Storage Monitor\Config\Backup. Using this API command, you can force the backup to happen on demand.

Optional Parameters
EXPORTCREDS - Backups normally do NOT contain all of the credentials that a system might have (credentials for accessing other servers, SMTP mail account credentials, database connection string, etc). If you must backup the credentials, you can append &EXPORTCREDS=1 to the end of the URL below and credentials will be saved in plain text in the backup file.

ionicons-v5-h

Note: Be VERY careful about using this option. Exporting credentials can be globally disabled by setting

HKEY_LOCAL_MACHINE\software\PAStorageMonitor\Protected
[DWORD] DisablePasswordExport = 1

Example

https://server:81?KEY=mysecretkey&API=DO_BACKUP

Output
A new backup file named Backup1.axml is created in C:\Program Files\PA Storage Monitor\Config\Backup

TUNNEL_CREATE

Creates a SNAP Tunnel based on configuration properties that are passed.

Required Parameters
LPORT - Listen side port (port that you will connect to).
SATID - Satellite where the tunnel will be created to/from. Satellite IDs can be seen in the Console on the Satellite's status report page.
DADDR - Destination hostname/IP address. This is where data will be sent/read from at the Satellite side. It can be the Satellite itself (127.0.0.1 for example) or a host on the remote Satellite's network.
DPORT - Destination port - this is the port where data will be sent to on the destination host.
USERNAME - The user whose credentials will be used to create the tunnel. This user's access will be used to confirm they have access to the destination address. See Remote User Access. To use the legacy mode of not requiring a login, see SNAP_AllowTunnelFromAnonAPI on this page.
PASSWORD - The password for the user specified by the USERNAME credential

Optional Parameters
SVC_LISTENS - 1 or 0 (defaults to 1). If 1 indicates whether the Central Server will listen on the port specified by LPORT. If 0, the Satellite will listen on the LPORT port.

Example
This will create a listening port on port 9000 on the Central Service which forwards to the RDP port (3389) on 192.168.7.4 on the Satellite's remote network. You could then launch the Remote Desktop application using: mstsc.exe /v:{IP of central service}:9000

https://server:81?KEY=mysecretkey&API=TUNNEL_CREATE&LPORT=9000&SATID=f7edb5fe-3aa6-4687-b686-9ecaa9094893&DADDR=192.168.7.4&DPORT=3389

Output

:OK:
Listening Port: 9000
TUNNEL_CLOSE

Closes a SNAP Tunnel based on configuration properties that are passed. These are the same parameters that would have been passed when the tunnel was created.

Required Parameters
LPORT - Listen side port (port that you will connect to).
SATID - Satellite where the tunnel will be created to/from. Satellite IDs can be seen in the Console on the Satellite's status report page.
DADDR - Destination hostname/IP address. This is where data will be sent/read from at the Satellite side.
DPORT - Destination port - this is the port where data will be sent to on the destination host.

Optional Parameters
SVC_LISTENS - 1 or 0 (defaults to 1). If 1 indicates whether the Central Server will listen on the port specified by LPORT. If 0, the Satellite will listen on the LPORT port.

Example
This will close the tunnel that was created in the TUNNEL_CREATE example above.

https://server:81?KEY=mysecretkey&API=TUNNEL_CLOSE&LPORT=9000&SATID=f7edb5fe-3aa6-4687-b686-9ecaa9094893&DADDR=192.168.7.4&DPORT=3389

Output

:OK:
TUNNELS_LIST

Lists SNAP Tunnels that exist to the target Satellite.

Required Parameters
SATID - Satellite for which the tunnel list is requested.

Example

https://server:81?KEY=mysecretkey&API=TUNNELS_LIST&SATID=f7edb5fe-3aa6-4687-b686-9ecaa9094893

Output

<?xml version="1.0"?>
<tunnels count="1">
 <tunnel>
  <listen>9000</listen>
  <destPort>3389</destPort>
  <destAddr>192.168.7.4</destAddr>
  <bServiceIsListener>1</bServiceIsListener>
  <satelliteID>f7edb5fe-3aa6-4687-b686-9ecaa9094893</satelliteID>
 </tunnel>
</tunnels>

Monitor Statuses

Alert2
Alert - Skipping Actions10
Alert - Green17
Alert - Red18
Alert - Suppressing19
Bad License14
Can't Run4
Dependency Not Met16
Disabled6
Error3
Error - Suppressed21
OK1
OK - Unacknowledged Alerts - Yellow20
OK - Unacknowledged Alerts - Red24
OK - Unacknowledged Alerts - Green25
Monitor Busy11
Monitor Maintenance Mode13
Satellite Disconnected23
Scheduled7
Server Disabled22
Server Maintenance Mode26
Startup Pause8
Training12
Unlicensed9

PA Storage Monitor

Help Map