class Aquatone::Collectors::Riddler
Constants
- API_BASE_URI
Public Instance Methods
run()
click to toggle source
# File lib/aquatone/collectors/riddler.rb, line 13 def run auth_response = post_request("#{API_BASE_URI}/auth/login", { :email => get_key("riddler_username"), :password => get_key("riddler_password") }.to_json, { :headers => { "Content-Type" => "application/json" } }) if auth_response.code == 400 or auth_response.parsed_response["meta"]["code"] == 400 failure("Invalid credentials to Riddler.io") elsif auth_response.code != 200 or auth_response.parsed_response["meta"]["code"] != 200 failure("Riddler.io auth API returned unexpected response code: #{response.code}") end token = auth_response.parsed_response["response"]["user"]["authentication_token"] response = post_request("#{API_BASE_URI}/api/search", { :query => "pld:#{url_escape(domain.name)}", :output => "host", :limit => 500 }.to_json, { :headers => { "Content-Type" => "application/json", "Authentication-Token" => token } }) response.parsed_response.each do |record| add_host(record["host"]) unless record["host"].empty? end end