Access all API commands using the following general format:

 

https://<hostname>:<port>/api/<api_version>/<end_point>/<id>/<task>

 

Methods

Accessing the standard format URL using different HTTP methods produces different results on the target object:

Returned Results

All returned results are provided in JSON format. Successfully completed requests return an HTTP code in the 200 range.

Authentication

Authentication to the API is based on the basic HTTP basic authentication template: each request to the API must provide a username and password pair. To safeguard this information, all requests to the Uptime Infrastructure Monitor API must use SSL communication.

Each user in Uptime Infrastructure Monitor has access to the API. User-visibility and role-based permissions are applied to each API call, ensuring users are only able to access and modify the same information they would be able to access from the Uptime Infrastructure Monitor UI.

Version Control

The version of the API you wish to access is embedded directly into the URL. Bug fixes and non-breaking feature changes are made without changing the version number. Major feature changes or breaking changes introduce a new version number. Backward support for previous API version is currently not defined.

Non-breaking changes include:

Breaking changes include:

Endpoints

Endpoints define the different types of Uptime Infrastructure Monitor objects that you can work with using the API. The currently supported endpoints include the following:

/elements – Uptime Infrastructure Monitor Elements
/monitors – Uptime Infrastructure Monitor service monitors
/groups – Uptime Infrastructure Monitor Element groups

The following is a summary of presently available resources:

Working with Elements

list all Elements and attached service monitors; display an Element's information and attached service monitors; display an Element's information and its current status:

 
GET
GET
GET

/api/v1/elements
/api/v1/elements /{id}
/api/v1/elements /{id} /status

update Element configuration:

 

PUT

/api/v1/elements/{id}

add, delete Element:

 

POST
POST
POST
POST
POST
DELETE

/api/v1/elements (Agent Server)
/api/v1/elements (WMI Server)
/api/v1/elements (Hyper-V Server)
/api/v1/elements (SNMP v2 Network Device)
/api/v1/elements (SNMP v3 Network Device)

/api/v1/elements/{id}

Working with service monitors

list all service monitors; display a specific server monitor; display status information for a service monitor:

 

GET
GET
GET
GET

/api/v1/elements/{id}/metrics
/api/v1/monitors
/api/v1/monitors /{id}
/api/v1/monitors /{id} /status

Working with Element groups

list all Element groups, member Elements, and monitors; list an Element group's member Elements and monitors; display the status of an Element group's member Elements and monitors:

 

GET
GET
GET

/api/v1/groups
/api/v1/groups /{id}
/api/v1/groups /{id} /status

Error Handling

If the provided command produces an error, an HTTP status in the 400 range is returned including a specific status code and a message with further details about the error. All error messages are returned in JSON format and look like the following:

 

{
    "error" : "Required field missing" ,
    "errorDescription" : null
}

Additional references: