class OTX::Base
Base
Class for API access, provides initial wrapper around Faraday performs base request
Public Class Methods
new(key, server="https://otx.alienvault.com")
click to toggle source
Initialise object
@param key [String] API Key for AlienVault OTX
API @param server [String] Base
URL
for API, defaults to 'otx.alienvault.com'
# File lib/otx_ruby/base.rb, line 13 def initialize(key, server="https://otx.alienvault.com") @key = key @server = server @conn = Faraday.new(:url => @server) do |faraday| faraday.request :url_encoded # form-encode POST params faraday.adapter Faraday.default_adapter # make requests with Net::HTTP end end
Public Instance Methods
get(url, params={})
click to toggle source
GET the provided URL
@param url [String] URL
to make API request to @param params [Hash] Additional parameters to be added to the requests
# File lib/otx_ruby/base.rb, line 29 def get(url, params={}) response = @conn.get do |req| req.url url req.headers['X-OTX-API-KEY'] = @key req.params = params end # Parse and return JSON object as hash to caller return Oj.load(response.body) end
patch(url, params={})
click to toggle source
PATCH to the provided URL
@param url [String] URL
to make API request to @param params [Hash] Additional parameters to be added to the requests
# File lib/otx_ruby/base.rb, line 63 def patch(url, params={}) response = @conn.patch do |req| req.url url req.headers['X-OTX-API-KEY'] = @key req.params = params end # Parse and return JSON object as hash to caller return Oj.load(response.body) end
post(url, params={})
click to toggle source
POST to the provided URL
@param url [String] URL
to make API request to @param params [Hash] Additional parameters to be added to the requests
# File lib/otx_ruby/base.rb, line 46 def post(url, params={}) response = @conn.post do |req| req.url url req.headers['X-OTX-API-KEY'] = @key req.params = params end # Parse and return JSON object as hash to caller return Oj.load(response.body) end