class GuestyAPI::Client

Public Class Methods

new(username:, password: nil, auth_mode: :basic) click to toggle source
# File lib/guesty_api/client.rb, line 11
def initialize(username:, password: nil, auth_mode: :basic)
  @username = username
  @password = password
  @auth_mode = auth_mode
end

Public Instance Methods

delete(url:) click to toggle source
# File lib/guesty_api/client.rb, line 29
def delete(url:)
  self.class.delete(url, **auth)
end
get(url:, data: nil) click to toggle source
# File lib/guesty_api/client.rb, line 17
def get(url:, data: nil)
  self.class.get(url, query: data, **auth)
end
post(url:, data:) click to toggle source
# File lib/guesty_api/client.rb, line 21
def post(url:, data:)
  self.class.post(url, body: data.to_json, **auth)
end
put(url:, data:) click to toggle source
# File lib/guesty_api/client.rb, line 25
def put(url:, data:)
  self.class.put(url, body: data.to_json, **auth)
end

Private Instance Methods

auth() click to toggle source
# File lib/guesty_api/client.rb, line 35
def auth
  if @auth_mode == :basic
    { basic_auth: { username: @username, password: @password } }
  else
    { headers: { 'Authorization' => "Bearer #{@username}" } }
  end
end