class Qualys::Api

Constants

PRODUCTION_ENDPOINT

Set the current production endpoint

Public Class Methods

api_get(url, options = {}) click to toggle source
# File lib/qualys/api.rb, line 17
def api_get(url, options = {})
  HTTParty::Basement.default_cookies.add_cookies(Qualys::Config.session_key) unless Qualys::Config.session_key.nil?

  # Send Request
  response = HTTParty.get(url, options)

  # Check if you need to be authorized
  check_response(response)
  # return the response
  response
end
api_post(url, options = {}) click to toggle source
# File lib/qualys/api.rb, line 31
def api_post(url, options = {})
  HTTParty::Basement.default_cookies.add_cookies(Qualys::Config.session_key) unless Qualys::Config.session_key.nil?

  # Send Request
  response = HTTParty.post(url, options)

  # Check if you need to be authorized
  check_response(response)
  # return the response
  response
end
base_uri=(base_uri) click to toggle source

Sets the base URI.

# File lib/qualys/api.rb, line 45
def base_uri=(base_uri)
  HTTParty::Basement.default_options.update(base_uri: base_uri)
end

Private Class Methods

check_response(response) click to toggle source
# File lib/qualys/api.rb, line 51
def check_response(response)
  code = response.code
  raise(Qualys::Api::AuthorizationRequired, 'Please Login Before Communicating With The API') if code.eql?(401)
  raise(Qualys::Api::Exception, response.parsed_response['SIMPLE_RETURN']['RESPONSE']['TEXT']) if code.eql?(403)
  unless code.eql?(200)
    raise(Qualys::Api::InvalidResponse, 'Invalid Response Received' + response.code.to_s + ' ' +
        response.request.last_uri.to_s)
  end
end