Class: Userstack::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/userstack/client.rb

Overview

A class which wraps calls to Userstack API

Instance Method Summary collapse

Constructor Details

#initialize(access_key, use_ssl: true, legacy: false) ⇒ Client

Returns a new instance of Client.

Parameters:

  • access_key (String)

    Userstack Access key

  • use_ssl (Boolean) (defaults to: true)

    Use ssl or not

  • legacy (Boolean) (defaults to: false)

    Legacy response

Raises:

  • (ArgumentError)

    when ‘access_key` is invalid

See Also:



17
18
19
20
21
22
23
24
# File 'lib/userstack/client.rb', line 17

def initialize(access_key, use_ssl: true, legacy: false)
  raise ArgumentError, 'Invalid Access key' if access_key.nil? || access_key.empty?

  @access_key = access_key.freeze
  @use_ssl = use_ssl
  @legacy = legacy
  freeze
end

Instance Method Details

#parse(useragent) ⇒ Hash

Parse an useragent using Userstack

Parameters:

  • useragent (String)

    an useragent

Returns:

  • (Hash)

    a Hash generated by parsing the JSON returned from the API call, just ‘{}` on parsing failure

Raises:

  • (ArgumentError)

    when ‘useragent` is invalid



32
33
34
35
36
37
# File 'lib/userstack/client.rb', line 32

def parse(useragent)
  raise ArgumentError, 'Invalid useragent' if useragent.nil? || useragent.empty?

  response = request(useragent)
  parse_as_json(response.body)
end