Class: RunscopeStatuspage::StatuspageAPI
- Inherits:
-
Object
- Object
- RunscopeStatuspage::StatuspageAPI
- Includes:
- HTTParty
- Defined in:
- lib/runscope_statuspage/statuspage_api.rb
Instance Method Summary collapse
-
#clear_metric_data ⇒ Object
Delete all data for a custom page metric.
-
#create_realtime_incident(page, name, msg, status, twitter) ⇒ Object
Create incident.
-
#initialize(token) ⇒ StatuspageAPI
constructor
Set credentials.
-
#push_metric_data(page_id, metric_id, data, timestamp) ⇒ Object
Publish data for a custom page metric.
Constructor Details
#initialize(token) ⇒ StatuspageAPI
Set credentials
11 12 13 |
# File 'lib/runscope_statuspage/statuspage_api.rb', line 11 def initialize(token) @options = { headers: {"Authorization" => "OAuth #{token}"} } end |
Instance Method Details
#clear_metric_data ⇒ Object
Delete all data for a custom page metric
34 35 36 |
# File 'lib/runscope_statuspage/statuspage_api.rb', line 34 def clear_metric_data self.class.delete("/pages/#{page_id}/metrics/#{metric_id}/data.json", @options) end |
#create_realtime_incident(page, name, msg, status, twitter) ⇒ Object
Create incident
16 17 18 19 20 21 22 23 |
# File 'lib/runscope_statuspage/statuspage_api.rb', line 16 def create_realtime_incident(page, name, msg, status, twitter) self.class.post("/pages/#{page}/incidents.json", @options.merge!(body: {"incident" => { "name" => name, "message" => msg, "status" => status.nil? ? 'investigating' : status, "wants_twitter_update" => twitter }})) end |
#push_metric_data(page_id, metric_id, data, timestamp) ⇒ Object
Publish data for a custom page metric
26 27 28 29 30 31 |
# File 'lib/runscope_statuspage/statuspage_api.rb', line 26 def push_metric_data(page_id, metric_id, data, ) self.class.post("/pages/#{page_id}/metrics/#{metric_id}/data.json", @options.merge!(body: {"data" => { "value" => data, "timestamp" => }})) end |