Module: Restiny::Api::Authentication

Includes:
Base
Included in:
Restiny
Defined in:
lib/restiny/api/authentication.rb

Instance Method Summary collapse

Methods included from Base

#api_get, #api_post

Instance Method Details

#get_authorise_url(redirect_url: nil, state: nil) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/restiny/api/authentication.rb', line 12

def get_authorise_url(redirect_url: nil, state: nil)
  check_oauth_client_id

  @oauth_state = state || SecureRandom.hex(15)

  params = { response_type: 'code', client_id: @oauth_client_id, state: @oauth_state }
  params['redirect_url'] = redirect_url unless redirect_url.nil?

  auth_connection.build_url("#{BUNGIE_URL}/en/oauth/authorize/", params).to_s
end

#request_access_token(code:, redirect_url: nil) ⇒ Object



23
24
25
26
27
28
29
30
# File 'lib/restiny/api/authentication.rb', line 23

def request_access_token(code:, redirect_url: nil)
  check_oauth_client_id

  params = { code: code, grant_type: 'authorization_code', client_id: @oauth_client_id }
  params['redirect_url'] = redirect_url unless redirect_url.nil?

  auth_connection.post('app/oauth/token/', params).body
end