class Evervault::Client
Attributes
api_key[RW]
base_url[RW]
cage_run_url[RW]
request_timeout[RW]
Public Class Methods
new( api_key:, base_url: "https://api.evervault.com/", cage_run_url: "https://cage.run/", request_timeout: 30 )
click to toggle source
# File lib/evervault/client.rb, line 9 def initialize( api_key:, base_url: "https://api.evervault.com/", cage_run_url: "https://cage.run/", request_timeout: 30 ) @api_key = api_key @base_url = base_url @cage_run_url = cage_run_url @request = Evervault::Http::Request.new( api_key: api_key, timeout: request_timeout, base_url: base_url, cage_run_url: cage_run_url ) @crypto_client = Evervault::Crypto::Client.new(request: @request) end
Public Instance Methods
cage_list()
click to toggle source
# File lib/evervault/client.rb, line 45 def cage_list cages = @request.get("cages") @cage_list ||= Evervault::Models::CageList.new(cages: cages["cages"], request: @request) end
cages()
click to toggle source
# File lib/evervault/client.rb, line 41 def cages cage_list.to_hash end
encrypt(data)
click to toggle source
# File lib/evervault/client.rb, line 28 def encrypt(data) @crypto_client.encrypt(data) end
encrypt_and_run(cage_name, data, options = {})
click to toggle source
# File lib/evervault/client.rb, line 36 def encrypt_and_run(cage_name, data, options = {}) encrypted_data = encrypt(data) run(cage_name, encrypted_data, options) end
run(cage_name, encrypted_data, options = {})
click to toggle source
# File lib/evervault/client.rb, line 32 def run(cage_name, encrypted_data, options = {}) @request.post(cage_name, encrypted_data, options: options, cage_run: true) end