Module: Sensu::API::Routes::Request

Includes:
Utilities::PublishCheckRequest
Included in:
Sensu::API::Routes
Defined in:
lib/sensu/api/routes/request.rb

Constant Summary collapse

REQUEST_URI =
/^\/request$/

Instance Method Summary collapse

Instance Method Details

#post_requestObject

POST /request



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/sensu/api/routes/request.rb', line 12

def post_request
  rules = {
    :check => {:type => String, :nil_ok => false},
    :subscribers => {:type => Array, :nil_ok => true}
  }
  read_data(rules) do |data|
    if @settings[:checks][data[:check]]
      check = @settings[:checks][data[:check]].dup
      check[:name] = data[:check]
      check[:subscribers] ||= Array.new
      check[:subscribers] = data[:subscribers] if data[:subscribers]
      publish_check_request(check)
      @response_content = {:issued => Time.now.to_i}
      accepted!
    else
      not_found!
    end
  end
end