Getting Started with the API

There are several ways for you to view and interact with your monitoring data beyond the website interface, including using the XML feed to consume data and interacting with the API to monitor and update your monitoring agents.

With the XML feed you can subscribe to the data you want and present it in your own format using your own custom reports.

Using the API you can interact with your monitoring tools using simple https requests to update the details of your monitored devices.

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.

You can create your own custom scripts or applications to interact with the settings and view the monitored data in your own customized environment.

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 which 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 action, such as monitoring a target such as a 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 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 set of rules, which determine how monitoring responses are processed and displayed.

Audit: provides historical information on each and any account modification.

The API uses JSON as a data format throughout the service, both for input and output. An app must set the Content-Type HTTP header to “application/json” if and only if it’s sending JSON in the request body.

The Dotcom-Monitor API is served over HTTP/HTTPS.

Base URL

All URLs referenced in the document have the following base:

https://api.dotcom-monitor.com/config_api_v1/

 

  • All read methods are HTTP/HTTPS GET requests.
  • All write methods are HTTP/HTTPS POST requests.
  • All requests require preliminary authentication.
  • Requests and responses are given in JSON.
Please remember you need to be authenticated before any API request. Authentication expires after 60 seconds of inactivity

The table below shows which request type and action is supported by each resource type.

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
POSTPUT /devices?verb=PUT/devices Create New Device
POST /device/{deviceId}/DisableAlert/ Disable Alerts
POST /device/{deviceId} Edit Device
POSTDELETE /device/{deviceId}?verb=delete/device/{deviceId} Delete Device
Task GET /device/{deviceid}/tasks Get list of tasks under a device
POSTPUT /tasks?verb=PUT/tasks Create new task
GET /task/{TaskId} Get task info
POST /task/{TaskId} Edit task
POSTDELETE /task/{TaskId}?verb=delete/task/{TaskId} Delete task
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
POSTPUT /schedulers?verb=PUT/schedulers Create new scheduler.
POST /scheduler/{ scheduler ID} Edit scheduler
POSTDELETE /Scheduler/{Scheduler_Id}?verb=delete/Scheduler/{Scheduler_Id} Delete scheduler
Location GET /locations/{platform_name} Get list of available locations
Alert Group GET /groups Get list of alert groups
POSTPUT /groups?verb=PUT/groups Create alert group
GET /Group/{Group_ID} Get alert group info
POST /Group/{Group_ID} Edit alert group
POSTDELETE /Group/{Group_Id}?verb=delete/Group/{Group_Id} Delete group
Alert template GET /templates Get list of alert templates
POSTPUT /templates?verb=PUT/templates Create new alert template
GET /template/{Template_ID} Get alert template info
POST /template/{Template_ID} Edit alert template
POSTDELETE /template/{Template_Id}?verb=delete/template/{Template_Id} Delete template
Filter GET /filters Get list of filters
POSTPUT /filters?verb=PUT/filters Create new filter
GET /filter/{filter_ID} Get specific filter information
POST /filter/{filter_ID} Edit filter
POSTDELETE /filter/{filter_ID}?verb=delete/filter/{filter_ID} Delete filter
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.