This section assists software developers who want to develop applications by using Dotcom-Monitor monitoring tools.

There are several ways to view and interact with monitoring data beyond the Dotcom-Monitor website interface, including using the XML feed to consume data and interacting with the Dotcom-Monitor API to monitor and update installed monitoring agents.

With the XML feed, developers can subscribe to the wanted data and present it in their own format using their own custom reports. See Using the XML Reporting Service (XRS) Tool for details.

The Dotcom-Monitor API users can create their own custom scripts or applications to interact with the settings and view the monitored data in their own customized environment. Our system uses REST API that enables interaction with the Dotcom-Monitor web site programmatically using the most popular methods for working with data via HTTP(S) requests (GET, POST, PUT, DELETE). Almost all Dotcom-Monitor objects can be accessed via REST API and almost every aspect of Dotcom-Monitor service functionality can be managed. Using API calls the developers can create and remove devices and tasks, postpone and start them, create and manage alert groups, templates, filters and schedulers, obtain device status information plus many other options.

In general, the Dotcom-Monitor API can be used in the following tasks:

  • Third-party integration with the Dotcom-Monitor Monitoring solution.
  • Data download and upload.
  • Data modification.

The most common actions executed via the REST API:

  • Accessing lists of monitoring platforms, devices, targets, schedulers, locations, alert groups, filters, alert templates.
  • Accessing detailed info on platforms, devices and targets.
  • Editing devices, targets, schedulers, alert groups and templates, filters.
  • Creating a new dotcom-Monitor object ( devices, targets, schedulers, etc.).
  • Managing audit objects.

 Custom Collector API

Separate MetricsView API is a set of methods for uploading any metrics from any source regardless of a platform into Dotcom-Monitor inc. for further processing and analysis.

The Dotcom-Monitor API is broken out into 10 resource types:

  • Platform: All monitoring tasks fall into one of five different platforms.
  • Devices: A monitored device is an organized “set” of monitoring tasks that contains either a single monitoring task, a sequence of monitoring tasks, a monitoring script that includes tasks, or a combination of all three.
  • Tasks: A task is any single monitoring activity, such as monitoring a target (URL, Mail Server, FTP Server, etc.).
  • Frequency: Defines how often monitoring sessions will be executed.
  • Scheduler: A scheduler details when a task will or will not be run.
  • Location: A monitoring location available within the Dotcom-Monitor worldwide monitoring network.
  • Alert Group: Setting up a group places recipients of a report and/or alert into a group. Each recipient in the group can have a unique alert template.
  • Alert Template: Template defines alerts format.
  • Filter: A filter is a set of rules, which determine how monitoring responses are processed and displayed.
  • Audit: Provides historical information on each and any account modification.

You need to be authenticated in Dotcom-Monitor before any API request. Authentication expires after 60 seconds of inactivity.

The table below shows which request type and action are supported by each resource type. See the Monitoring Methods section for detailed descriptions.

Resource type Request Method URI(s) Description
Platform GET /platforms Return list of available platforms
Device GET /devices/{platform} Get device list by platform.
GET /device/{deviceId} Get Device info
POST /devices?verb=PUT Create New Device
PUT /devices
POST /device/{deviceId}/DisableAlert/ Disable Alerts
POST /device/{deviceId} Edit Device
POST /device/{deviceId}?verb=delete Delete Device
DELETE /device/{deviceId}
Task GET /device/{deviceid}/tasks Get list of tasks under a device
POST /tasks?verb=PUT Create new task
PUT /tasks
GET /task/{TaskId} Get task info
POST /task/{TaskId} Edit task
POST /task/{TaskId}?verb=delete Delete task
DELETE /task/{TaskId}
Frequency GET /frequencies/{platform_name} Get available freq. by platform.
Scheduler GET /schedulers Get list of schedulers
GET /Scheduler/{Scheduler_ID} Get specific scheduler info
POST /schedulers?verb=PUT Create new scheduler
PUT schedulers
POST /scheduler/{ scheduler ID} Edit scheduler
POST /Scheduler/{Scheduler_Id}?verb=delete Delete scheduler
DELETE /Scheduler/{Scheduler_Id}
Location GET /locations/{platform_name} Get list of available locations
Alert Group GET /groups Get list of alert groups
POST /groups?verb=PUT/groups Create alert group
PUT groups/groups
GET /Group/{Group_ID} Get alert group info
POST /Group/{Group_ID} Edit alert group
POST /Group/{Group_Id}?verb=delete Delete group
DELETE Group/{Group_Id}
Alert template GET /templates Get list of alert templates
POST /templates?verb=PUT/templates Create new alert template
PUT /templates/templates
GET /template/{Template_ID} Get alert template info
POST /template/{Template_ID} Edit alert template
POST /template/{Template_Id}?verb=delete Delete template
DELETE /template/{Template_Id}
Filter GET /filters Get list of filters
POST /filters?verb=PUT Create new filter
PUT /filters
GET /filter/{filter_ID} Get specific filter information
POST /filter/{filter_ID} Edit filter
POST /filter/{filter_ID}?verb=delete Delete filter
DELETE /filter/{filter_ID}
Audit GET /audit/list Get list audited objects for current user for the last 24h.
GET /audit/object/{sample ID} Get contents of audit for the particular ID
POST /audit/list Get filtered list of audited objects.