Datadog API Node.JS Client
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

102 lines
3.1 KiB

var util = require('util');
var downtime_api = function(){};
downtime_api.prototype.schedule_downtime = function(scope, options, callback){
/*
* downtime_api.schedule_downtime(scope, [options], [callback])
*
* method to schedule a new downtime
*
* `scope` the scope to schedule downtime for
* `options` optional `start` `end` and `message` paramaters
* `callback` is an optional function to call with the results of the api call
* callback(error, results, status_code)
*/
if(typeof scope !== 'string'){
throw new Error('scope parameter must be a string');
}
if(typeof options === 'function'){
callback = options;
options = {};
}
options.scope = scope;
this.request('POST', '/downtime', {body: options}, callback);
};
downtime_api.prototype.update_downtime = function(downtime_id, options, callback){
/*
* downtime_api.update_downtime(downtime_id, [options], [callback])
*
* method to update an existing downtime
*
* `downtime_id` the id of the downtime
* `options` optional `scope` `start` `end` and `message` paramaters
* `callback` is an optional function to call with the results of the api call
* callback(error, results, status_code)
*/
if(typeof options === 'function'){
callback = options;
options = {};
}
this.request('PUT', util.format('/downtime/%s', downtime_id), {body: options}, callback);
};
downtime_api.prototype.get_downtime = function(downtime_id, callback){
/*
* downtime_api.get_downtime(downtime_id, [callback])
*
* method to get an existing downtime
*
* `downtime_id` the id of the downtime
* `callback` is an optional function to call with the results of the api call
* callback(error, results, status_code)
*/
this.request('GET', util.format('/downtime/%s', downtime_id), callback);
};
downtime_api.prototype.cancel_downtime = function(downtime_id, callback){
/*
* downtime_api.cancel_downtime(downtime_id, [callback])
*
* method to cancel an existing downtime
*
* `downtime_id` the id of the downtime
* `callback` is an optional function to call with the results of the api call
* callback(error, results, status_code)
*/
this.request('DELETE', util.format('/downtime/%s', downtime_id), callback);
};
downtime_api.prototype.get_all_downtimes = function(current_only, callback){
/*
* downtime_api.get_all_downtimes(downtime_id, [current_only], [callback])
*
* method to get all downtimes
*
* `downtime_id` the id of the downtime
* `current_only` whether or not to get the current downtime only
* `callback` is an optional function to call with the results of the api call
* callback(error, results, status_code)
*/
if(typeof current_only === 'function'){
callback = current_only;
current_only = false;
}
query = {};
if(current_only){
query.current_only = true;
}
this.request('GET', '/downtime', {query: query}, callback);
};
return module.exports = downtime_api;