Class: TrophyApiClient::PointsClient
- Inherits:
-
Object
- Object
- TrophyApiClient::PointsClient
- Defined in:
- lib/trophy_api_client/points/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #initialize(request_client:) ⇒ TrophyApiClient::PointsClient constructor
-
#summary(request_options: nil) ⇒ TrophyApiClient::POINTS_SUMMARY_RESPONSE
Get a breakdown of the number of users with points in each range.
-
#triggers(request_options: nil) ⇒ Array<TrophyApiClient::PointsTriggerResponse>
Get all points triggers.
Constructor Details
#initialize(request_client:) ⇒ TrophyApiClient::PointsClient
16 17 18 |
# File 'lib/trophy_api_client/points/client.rb', line 16 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ TrophyApiClient::RequestClient (readonly)
12 13 14 |
# File 'lib/trophy_api_client/points/client.rb', line 12 def request_client @request_client end |
Instance Method Details
#summary(request_options: nil) ⇒ TrophyApiClient::POINTS_SUMMARY_RESPONSE
Get a breakdown of the number of users with points in each range.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/trophy_api_client/points/client.rb', line 31 def summary(request_options: nil) response = @request_client.conn.get do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["X-API-KEY"] = .api_key unless &.api_key.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/points/summary" end parsed_json = JSON.parse(response.body) parsed_json&.map do |item| item = item.to_json TrophyApiClient::PointsRange.from_json(json_object: item) end end |
#triggers(request_options: nil) ⇒ Array<TrophyApiClient::PointsTriggerResponse>
Get all points triggers.
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/trophy_api_client/points/client.rb', line 66 def triggers(request_options: nil) response = @request_client.conn.get do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["X-API-KEY"] = .api_key unless &.api_key.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/points/triggers" end parsed_json = JSON.parse(response.body) parsed_json&.map do |item| item = item.to_json TrophyApiClient::PointsTriggerResponse.from_json(json_object: item) end end |