Class: Eloqua::Api::Client
- Inherits:
-
Object
- Object
- Eloqua::Api::Client
- Includes:
- EloquaApiExceptions, HTTParty, UrlHelper
- Defined in:
- lib/eloqua/api/client.rb
Overview
provides single source of setting and calling apis
Instance Method Summary collapse
- #call(api_endpoint:, method_type: :get, params: {}) ⇒ Object
-
#initialize(access_token:, base_url:, authorization_type: DEFAULT_AUTHORIZATION_TYPE) ⇒ Client
constructor
A new instance of Client.
Methods included from UrlHelper
#extend_params_to_url, #sub_api_version, #sub_id_in_endpoint
Constructor Details
#initialize(access_token:, base_url:, authorization_type: DEFAULT_AUTHORIZATION_TYPE) ⇒ Client
Returns a new instance of Client.
12 13 14 15 |
# File 'lib/eloqua/api/client.rb', line 12 def initialize(access_token:, base_url:, authorization_type: DEFAULT_AUTHORIZATION_TYPE) self.class.base_uri sub_api_version(url: base_url) self.class.headers http_headers(access_token, ) end |
Instance Method Details
#call(api_endpoint:, method_type: :get, params: {}) ⇒ Object
17 18 19 20 21 22 23 24 25 |
# File 'lib/eloqua/api/client.rb', line 17 def call(api_endpoint:, method_type: :get, params: {}) puts api_endpoint puts self.class.base_uri request_response = self.class.send(method_type, api_endpoint, body: params) return request_response.parsed_response if response_successful?(request_response) raise error_class(request_response), "Code: #{request_response.code}, response: #{request_response.parsed_response}" end |