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.
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.
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. |