Class: Mihari::Clients::Yeti
Overview
Yeti API client
Instance Attribute Summary
Attributes inherited from Base
#base_url, #headers, #pagination_interval, #timeout
Instance Method Summary collapse
- #create_observables(json) ⇒ Hash
- #get_token ⇒ Object
-
#initialize(base_url, api_key:, headers: {}, timeout: nil) ⇒ Yeti
constructor
A new instance of Yeti.
Constructor Details
#initialize(base_url, api_key:, headers: {}, timeout: nil) ⇒ Yeti
Returns a new instance of Yeti.
15 16 17 18 19 20 |
# File 'lib/mihari/clients/yeti.rb', line 15 def initialize(base_url, api_key:, headers: {}, timeout: nil) raise(ArgumentError, "api_key is required") unless api_key headers["x-yeti-apikey"] = api_key super(base_url, headers:, timeout:) end |
Instance Method Details
#create_observables(json) ⇒ Hash
32 33 34 35 |
# File 'lib/mihari/clients/yeti.rb', line 32 def create_observables(json) token = get_token post_json("/api/v2/observables/bulk", json:, headers: {authorization: "Bearer #{token}"}) end |
#get_token ⇒ Object
22 23 24 25 |
# File 'lib/mihari/clients/yeti.rb', line 22 def get_token res = post_json("/api/v2/auth/api-token") res["access_token"] end |