class Reach5::API
Handles all calls to Reach5's API
.
Public Instance Methods
get_access_token()
click to toggle source
Get a new access token.
Example:
Reach5::API.new.get_access_token # => { # "auth" => { # "accessToken" => "f00b4r", # "expires" => 43200 # }, # "status" => "success", # }
# File lib/reach5/api.rb, line 15 def get_access_token params = { client_key: Reach5.configuration.client_key, client_secret: Reach5.configuration.client_secret, } request = HTTP.get("#{host}/api/v1/access_token", params: params) request.parse end
get_profiles(page: 1, count: 10)
click to toggle source
List profiles
Example:
Reach5::API.new.get_profiles # => { # "total" => 42, # "items" => […], # "status" => "success", # }
# File lib/reach5/api.rb, line 62 def get_profiles(page: 1, count: 10) params = { access_token: access_token, page: page, count: count, } HTTP.get("#{host}/api/v1/profile", params: params).parse end
post_login(provider:, provider_token:, provider_secret: nil, user_agent: nil)
click to toggle source
Collects and stores profile data from an Auth provider.
Example:
Reach5::API.new.post_login(provider: 'facebook', provider_token: 'f00b4r') # => { # "profile" => { # … # }, # "status" => "success", # }
# File lib/reach5/api.rb, line 35 def post_login(provider:, provider_token:, provider_secret: nil, user_agent: nil) params = { provider: provider, provider_token: provider_token, provider_secret: provider_secret, } request = HTTP request = request.headers("User-Agent": user_agent) if user_agent request = request.post("#{host}/api/v1/login", params: params) request.parse end
Private Instance Methods
access_token()
click to toggle source
# File lib/reach5/api.rb, line 77 def access_token @access_token ||= get_access_token.fetch("auth").fetch("accessToken") end
host()
click to toggle source
# File lib/reach5/api.rb, line 73 def host "https://#{Reach5.configuration.customer_domain}" end