trophy_api_client 1.26.1 → 1.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trophy/admin/client.rb +5 -0
  3. data/lib/trophy/admin/rewards/client.rb +207 -0
  4. data/lib/trophy/admin/rewards/triggers/client.rb +209 -0
  5. data/lib/trophy/admin/rewards/triggers/types/triggers_delete_request.rb +17 -0
  6. data/lib/trophy/admin/rewards/triggers/types/triggers_list_request.rb +19 -0
  7. data/lib/trophy/admin/rewards/types/rewards_delete_request.rb +13 -0
  8. data/lib/trophy/admin/rewards/types/rewards_list_request.rb +15 -0
  9. data/lib/trophy/client.rb +6 -1
  10. data/lib/trophy/leaderboards/types/leaderboards_all_response_item.rb +2 -0
  11. data/lib/trophy/rewards/client.rb +57 -0
  12. data/lib/trophy/rewards/types/rewards_redeem_request.rb +13 -0
  13. data/lib/trophy/types/achievement_completion_response.rb +4 -0
  14. data/lib/trophy/types/admin_leaderboard.rb +2 -0
  15. data/lib/trophy/types/admin_leaderboard_user_attributes_item.rb +11 -0
  16. data/lib/trophy/types/admin_reward.rb +28 -0
  17. data/lib/trophy/types/admin_reward_status.rb +12 -0
  18. data/lib/trophy/types/admin_reward_trigger.rb +30 -0
  19. data/lib/trophy/types/admin_reward_trigger_event_attributes_item.rb +11 -0
  20. data/lib/trophy/types/admin_reward_trigger_status.rb +12 -0
  21. data/lib/trophy/types/admin_reward_trigger_type.rb +14 -0
  22. data/lib/trophy/types/admin_reward_trigger_user_attributes_item.rb +11 -0
  23. data/lib/trophy/types/admin_reward_type.rb +12 -0
  24. data/lib/trophy/types/admin_reward_user_attributes_item.rb +11 -0
  25. data/lib/trophy/types/create_leaderboard_request_item.rb +2 -0
  26. data/lib/trophy/types/create_leaderboard_request_item_user_attributes_item.rb +11 -0
  27. data/lib/trophy/types/create_reward_request_item.rb +28 -0
  28. data/lib/trophy/types/create_reward_request_item_status.rb +12 -0
  29. data/lib/trophy/types/create_reward_request_item_type.rb +12 -0
  30. data/lib/trophy/types/create_reward_request_item_user_attributes_item.rb +11 -0
  31. data/lib/trophy/types/create_reward_trigger_request_item.rb +28 -0
  32. data/lib/trophy/types/create_reward_trigger_request_item_event_attributes_item.rb +11 -0
  33. data/lib/trophy/types/create_reward_trigger_request_item_status.rb +12 -0
  34. data/lib/trophy/types/create_reward_trigger_request_item_type.rb +14 -0
  35. data/lib/trophy/types/create_reward_trigger_request_item_user_attributes_item.rb +11 -0
  36. data/lib/trophy/types/create_reward_triggers_request.rb +23 -0
  37. data/lib/trophy/types/create_reward_triggers_response.rb +12 -0
  38. data/lib/trophy/types/create_rewards_request.rb +23 -0
  39. data/lib/trophy/types/create_rewards_response.rb +12 -0
  40. data/lib/trophy/types/created_admin_reward.rb +31 -0
  41. data/lib/trophy/types/delete_reward_triggers_response.rb +12 -0
  42. data/lib/trophy/types/delete_rewards_response.rb +12 -0
  43. data/lib/trophy/types/event_response.rb +2 -0
  44. data/lib/trophy/types/leaderboard_response.rb +2 -0
  45. data/lib/trophy/types/leaderboard_response_user_attributes_item.rb +11 -0
  46. data/lib/trophy/types/leaderboard_response_with_rankings.rb +2 -0
  47. data/lib/trophy/types/list_reward_triggers_response.rb +23 -0
  48. data/lib/trophy/types/list_rewards_response.rb +23 -0
  49. data/lib/trophy/types/metric_event_leaderboard_response.rb +2 -0
  50. data/lib/trophy/types/points_trigger.rb +4 -0
  51. data/lib/trophy/types/points_trigger_type.rb +1 -0
  52. data/lib/trophy/types/redeem_reward_response.rb +15 -0
  53. data/lib/trophy/types/redeemed_reward.rb +13 -0
  54. data/lib/trophy/types/reward_summary.rb +23 -0
  55. data/lib/trophy/types/reward_summary_type.rb +12 -0
  56. data/lib/trophy/types/reward_webhook_event.rb +17 -0
  57. data/lib/trophy/types/reward_webhook_event_redemption.rb +17 -0
  58. data/lib/trophy/types/reward_webhook_event_type.rb +12 -0
  59. data/lib/trophy/types/update_leaderboard_request_item.rb +2 -0
  60. data/lib/trophy/types/update_leaderboard_request_item_user_attributes_item.rb +11 -0
  61. data/lib/trophy/types/update_reward_request_item.rb +27 -0
  62. data/lib/trophy/types/update_reward_request_item_status.rb +12 -0
  63. data/lib/trophy/types/update_reward_request_item_type.rb +12 -0
  64. data/lib/trophy/types/update_reward_request_item_user_attributes_item.rb +11 -0
  65. data/lib/trophy/types/update_reward_triggers_request.rb +23 -0
  66. data/lib/trophy/types/update_reward_triggers_request_item.rb +29 -0
  67. data/lib/trophy/types/update_reward_triggers_request_item_event_attributes_item.rb +11 -0
  68. data/lib/trophy/types/update_reward_triggers_request_item_status.rb +12 -0
  69. data/lib/trophy/types/update_reward_triggers_request_item_type.rb +14 -0
  70. data/lib/trophy/types/update_reward_triggers_request_item_user_attributes_item.rb +11 -0
  71. data/lib/trophy/types/update_reward_triggers_response.rb +12 -0
  72. data/lib/trophy/types/update_rewards_request.rb +23 -0
  73. data/lib/trophy/types/update_rewards_response.rb +12 -0
  74. data/lib/trophy/types/user_leaderboard_response.rb +2 -0
  75. data/lib/trophy/types/user_leaderboard_response_with_history.rb +2 -0
  76. data/lib/trophy/types/user_reward_response.rb +19 -0
  77. data/lib/trophy/types/user_reward_trigger.rb +25 -0
  78. data/lib/trophy/types/user_reward_trigger_type.rb +14 -0
  79. data/lib/trophy/types/webhook_user_leaderboard_response.rb +2 -0
  80. data/lib/trophy/users/client.rb +45 -0
  81. data/lib/trophy/users/types/users_rewards_request.rb +21 -0
  82. data/lib/trophy/version.rb +1 -1
  83. data/lib/trophy.rb +63 -0
  84. data/reference.md +1274 -368
  85. metadata +64 -1
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class RewardWebhookEvent < Internal::Types::Model
6
+ field :type, -> { Trophy::Types::RewardWebhookEventType }, optional: false, nullable: false
7
+
8
+ field :timestamp, -> { String }, optional: false, nullable: false
9
+
10
+ field :user, -> { Trophy::Types::User }, optional: false, nullable: false
11
+
12
+ field :reward, -> { Trophy::Types::RewardSummary }, optional: false, nullable: false
13
+
14
+ field :redemption, -> { Trophy::Types::RewardWebhookEventRedemption }, optional: false, nullable: false
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class RewardWebhookEventRedemption < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :redeemed, -> { Internal::Types::Boolean }, optional: false, nullable: false
9
+
10
+ field :awarded_at, -> { String }, optional: false, nullable: false, api_name: "awardedAt"
11
+
12
+ field :redeemed_at, -> { String }, optional: true, nullable: false, api_name: "redeemedAt"
13
+
14
+ field :trigger, -> { Trophy::Types::UserRewardTrigger }, optional: true, nullable: false
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module RewardWebhookEventType
6
+ extend Trophy::Internal::Types::Enum
7
+
8
+ REWARD_AWARDED = "reward.awarded"
9
+ REWARD_REDEEMED = "reward.redeemed"
10
+ end
11
+ end
12
+ end
@@ -36,6 +36,8 @@ module Trophy
36
36
  field :run_unit, -> { Trophy::Types::UpdateLeaderboardRequestItemRunUnit }, optional: true, nullable: false, api_name: "runUnit"
37
37
 
38
38
  field :run_interval, -> { Integer }, optional: true, nullable: false, api_name: "runInterval"
39
+
40
+ field :user_attributes, -> { Internal::Types::Array[Trophy::Types::UpdateLeaderboardRequestItemUserAttributesItem] }, optional: true, nullable: false, api_name: "userAttributes"
39
41
  end
40
42
  end
41
43
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class UpdateLeaderboardRequestItemUserAttributesItem < Internal::Types::Model
6
+ field :attribute_id, -> { String }, optional: false, nullable: false, api_name: "attributeId"
7
+
8
+ field :attribute_value, -> { String }, optional: false, nullable: false, api_name: "attributeValue"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ # A reward update object. Only id is required; all other fields are optional. Triggers are updated through the
6
+ # reward triggers endpoints.
7
+ class UpdateRewardRequestItem < Internal::Types::Model
8
+ field :id, -> { String }, optional: false, nullable: false
9
+
10
+ field :name, -> { String }, optional: true, nullable: false
11
+
12
+ field :description, -> { String }, optional: true, nullable: false
13
+
14
+ field :status, -> { Trophy::Types::UpdateRewardRequestItemStatus }, optional: true, nullable: false
15
+
16
+ field :type, -> { Trophy::Types::UpdateRewardRequestItemType }, optional: true, nullable: false
17
+
18
+ field :points_system_id, -> { String }, optional: true, nullable: false, api_name: "pointsSystemId"
19
+
20
+ field :points, -> { Integer }, optional: true, nullable: false
21
+
22
+ field :max_redemptions, -> { Integer }, optional: true, nullable: false, api_name: "maxRedemptions"
23
+
24
+ field :user_attributes, -> { Internal::Types::Array[Trophy::Types::UpdateRewardRequestItemUserAttributesItem] }, optional: true, nullable: false, api_name: "userAttributes"
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UpdateRewardRequestItemStatus
6
+ extend Trophy::Internal::Types::Enum
7
+
8
+ ACTIVE = "active"
9
+ INACTIVE = "inactive"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UpdateRewardRequestItemType
6
+ extend Trophy::Internal::Types::Enum
7
+
8
+ POINTS = "points"
9
+ CUSTOM = "custom"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class UpdateRewardRequestItemUserAttributesItem < Internal::Types::Model
6
+ field :attribute_id, -> { String }, optional: false, nullable: false, api_name: "attributeId"
7
+
8
+ field :attribute_value, -> { String }, optional: false, nullable: false, api_name: "attributeValue"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UpdateRewardTriggersRequest
6
+ # UpdateRewardTriggersRequest is an alias for Array
7
+
8
+ # @option str [String]
9
+ #
10
+ # @return [untyped]
11
+ def self.load(str)
12
+ ::JSON.parse(str)
13
+ end
14
+
15
+ # @option value [untyped]
16
+ #
17
+ # @return [String]
18
+ def self.dump(value)
19
+ ::JSON.generate(value)
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class UpdateRewardTriggersRequestItem < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :type, -> { Trophy::Types::UpdateRewardTriggersRequestItemType }, optional: true, nullable: false
9
+
10
+ field :status, -> { Trophy::Types::UpdateRewardTriggersRequestItemStatus }, optional: true, nullable: false
11
+
12
+ field :user_attributes, -> { Internal::Types::Array[Trophy::Types::UpdateRewardTriggersRequestItemUserAttributesItem] }, optional: true, nullable: false, api_name: "userAttributes"
13
+
14
+ field :metric_id, -> { String }, optional: true, nullable: false, api_name: "metricId"
15
+
16
+ field :metric_threshold, -> { Integer }, optional: true, nullable: false, api_name: "metricThreshold"
17
+
18
+ field :event_attributes, -> { Internal::Types::Array[Trophy::Types::UpdateRewardTriggersRequestItemEventAttributesItem] }, optional: true, nullable: false, api_name: "eventAttributes"
19
+
20
+ field :achievement_id, -> { String }, optional: true, nullable: false, api_name: "achievementId"
21
+
22
+ field :streak_length, -> { Integer }, optional: true, nullable: false, api_name: "streakLength"
23
+
24
+ field :leaderboard_id, -> { String }, optional: true, nullable: false, api_name: "leaderboardId"
25
+
26
+ field :rank, -> { Integer }, optional: true, nullable: false
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class UpdateRewardTriggersRequestItemEventAttributesItem < Internal::Types::Model
6
+ field :attribute_id, -> { String }, optional: false, nullable: false, api_name: "attributeId"
7
+
8
+ field :attribute_value, -> { String }, optional: false, nullable: false, api_name: "attributeValue"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UpdateRewardTriggersRequestItemStatus
6
+ extend Trophy::Internal::Types::Enum
7
+
8
+ ACTIVE = "active"
9
+ INACTIVE = "inactive"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UpdateRewardTriggersRequestItemType
6
+ extend Trophy::Internal::Types::Enum
7
+
8
+ METRIC = "metric"
9
+ ACHIEVEMENT = "achievement"
10
+ STREAK = "streak"
11
+ LEADERBOARD = "leaderboard"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class UpdateRewardTriggersRequestItemUserAttributesItem < Internal::Types::Model
6
+ field :attribute_id, -> { String }, optional: false, nullable: false, api_name: "attributeId"
7
+
8
+ field :attribute_value, -> { String }, optional: false, nullable: false, api_name: "attributeValue"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ # Response containing updated triggers and any issues encountered.
6
+ class UpdateRewardTriggersResponse < Internal::Types::Model
7
+ field :updated, -> { Internal::Types::Array[Trophy::Types::AdminRewardTrigger] }, optional: false, nullable: false
8
+
9
+ field :issues, -> { Internal::Types::Array[Trophy::Types::AdminIssue] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UpdateRewardsRequest
6
+ # UpdateRewardsRequest is an alias for Array
7
+
8
+ # @option str [String]
9
+ #
10
+ # @return [untyped]
11
+ def self.load(str)
12
+ ::JSON.parse(str)
13
+ end
14
+
15
+ # @option value [untyped]
16
+ #
17
+ # @return [String]
18
+ def self.dump(value)
19
+ ::JSON.generate(value)
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ # Response containing updated rewards and any per-item issues.
6
+ class UpdateRewardsResponse < Internal::Types::Model
7
+ field :updated, -> { Internal::Types::Array[Trophy::Types::AdminReward] }, optional: false, nullable: false
8
+
9
+ field :issues, -> { Internal::Types::Array[Trophy::Types::AdminIssue] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
@@ -40,6 +40,8 @@ module Trophy
40
40
 
41
41
  field :run_interval, -> { Integer }, optional: true, nullable: false, api_name: "runInterval"
42
42
 
43
+ field :user_attributes, -> { Internal::Types::Array[Trophy::Types::LeaderboardResponseUserAttributesItem] }, optional: false, nullable: false, api_name: "userAttributes"
44
+
43
45
  field :rank, -> { Integer }, optional: true, nullable: false
44
46
 
45
47
  field :value, -> { Integer }, optional: true, nullable: false
@@ -44,6 +44,8 @@ module Trophy
44
44
 
45
45
  field :run_interval, -> { Integer }, optional: true, nullable: false, api_name: "runInterval"
46
46
 
47
+ field :user_attributes, -> { Internal::Types::Array[Trophy::Types::LeaderboardResponseUserAttributesItem] }, optional: false, nullable: false, api_name: "userAttributes"
48
+
47
49
  field :history, -> { Internal::Types::Array[Trophy::Types::LeaderboardEvent] }, optional: false, nullable: false
48
50
  end
49
51
  end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ class UserRewardResponse < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :awarded_at, -> { String }, optional: false, nullable: false, api_name: "awardedAt"
9
+
10
+ field :redeemed, -> { Internal::Types::Boolean }, optional: false, nullable: false
11
+
12
+ field :redeemed_at, -> { String }, optional: true, nullable: false, api_name: "redeemedAt"
13
+
14
+ field :reward, -> { Trophy::Types::RewardSummary }, optional: false, nullable: false
15
+
16
+ field :trigger, -> { Trophy::Types::UserRewardTrigger }, optional: true, nullable: false
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ # The trigger that awarded the reward, as it is configured now. Only the fields for the trigger's current type are
6
+ # included.
7
+ class UserRewardTrigger < Internal::Types::Model
8
+ field :id, -> { String }, optional: false, nullable: false
9
+
10
+ field :type, -> { Trophy::Types::UserRewardTriggerType }, optional: false, nullable: false
11
+
12
+ field :metric_id, -> { String }, optional: true, nullable: false, api_name: "metricId"
13
+
14
+ field :metric_threshold, -> { Integer }, optional: true, nullable: false, api_name: "metricThreshold"
15
+
16
+ field :achievement_id, -> { String }, optional: true, nullable: false, api_name: "achievementId"
17
+
18
+ field :streak_length_threshold, -> { Integer }, optional: true, nullable: false, api_name: "streakLengthThreshold"
19
+
20
+ field :leaderboard_id, -> { String }, optional: true, nullable: false, api_name: "leaderboardId"
21
+
22
+ field :rank, -> { Integer }, optional: true, nullable: false
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Types
5
+ module UserRewardTriggerType
6
+ extend Trophy::Internal::Types::Enum
7
+
8
+ METRIC = "metric"
9
+ ACHIEVEMENT = "achievement"
10
+ STREAK = "streak"
11
+ LEADERBOARD = "leaderboard"
12
+ end
13
+ end
14
+ end
@@ -44,6 +44,8 @@ module Trophy
44
44
 
45
45
  field :run_interval, -> { Integer }, optional: true, nullable: false, api_name: "runInterval"
46
46
 
47
+ field :user_attributes, -> { Internal::Types::Array[Trophy::Types::LeaderboardResponseUserAttributesItem] }, optional: false, nullable: false, api_name: "userAttributes"
48
+
47
49
  field :previous_rank, -> { Integer }, optional: true, nullable: false, api_name: "previousRank"
48
50
 
49
51
  field :previous_value, -> { Integer }, optional: true, nullable: false, api_name: "previousValue"
@@ -372,6 +372,51 @@ module Trophy
372
372
  raise error_class.new(response.body, code: code)
373
373
  end
374
374
 
375
+ # Get rewards awarded to a user. Filter by redeemed state and the date the reward was awarded.
376
+ #
377
+ # @param request_options [Hash]
378
+ # @param params [Hash]
379
+ # @option request_options [String] :base_url
380
+ # @option request_options [Hash{String => Object}] :additional_headers
381
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
382
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
383
+ # @option request_options [Integer] :timeout_in_seconds
384
+ # @option params [String] :id
385
+ # @option params [Boolean, nil] :redeemed
386
+ # @option params [String, nil] :start_date
387
+ # @option params [String, nil] :end_date
388
+ # @option params [Integer, nil] :skip
389
+ # @option params [Integer, nil] :limit
390
+ #
391
+ # @return [Array[Trophy::Types::UserRewardResponse]]
392
+ def rewards(request_options: {}, **params)
393
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
394
+ query_params = {}
395
+ query_params["redeemed"] = params[:redeemed] if params.key?(:redeemed)
396
+ query_params["startDate"] = params[:start_date] if params.key?(:start_date)
397
+ query_params["endDate"] = params[:end_date] if params.key?(:end_date)
398
+ query_params["skip"] = params[:skip] if params.key?(:skip)
399
+ query_params["limit"] = params[:limit] if params.key?(:limit)
400
+
401
+ request = Trophy::Internal::JSON::Request.new(
402
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:api),
403
+ method: "GET",
404
+ path: "users/#{URI.encode_uri_component(params[:id].to_s)}/rewards",
405
+ query: query_params,
406
+ request_options: request_options
407
+ )
408
+ begin
409
+ response = @client.send(request)
410
+ rescue Net::HTTPRequestTimeout
411
+ raise Trophy::Errors::TimeoutError
412
+ end
413
+ code = response.code.to_i
414
+ return if code.between?(200, 299)
415
+
416
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
417
+ raise error_class.new(response.body, code: code)
418
+ end
419
+
375
420
  # Get a user's streak data.
376
421
  #
377
422
  # @param request_options [Hash]
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Users
5
+ module Types
6
+ class UsersRewardsRequest < Internal::Types::Model
7
+ field :id, -> { String }, optional: false, nullable: false
8
+
9
+ field :redeemed, -> { Internal::Types::Boolean }, optional: true, nullable: false
10
+
11
+ field :start_date, -> { String }, optional: true, nullable: false, api_name: "startDate"
12
+
13
+ field :end_date, -> { String }, optional: true, nullable: false, api_name: "endDate"
14
+
15
+ field :skip, -> { Integer }, optional: true, nullable: false
16
+
17
+ field :limit, -> { Integer }, optional: true, nullable: false
18
+ end
19
+ end
20
+ end
21
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Trophy
4
- VERSION = "1.26.1"
4
+ VERSION = "1.28.0"
5
5
  end
data/lib/trophy.rb CHANGED
@@ -42,6 +42,7 @@ require_relative "trophy/users/types/users_points_event_summary_response_item"
42
42
  require_relative "trophy/leaderboards/types/leaderboards_all_response_item_status"
43
43
  require_relative "trophy/types/leaderboard_response_rank_by"
44
44
  require_relative "trophy/types/leaderboard_response_run_unit"
45
+ require_relative "trophy/types/leaderboard_response_user_attributes_item"
45
46
  require_relative "trophy/types/leaderboard_response"
46
47
  require_relative "trophy/leaderboards/types/leaderboards_all_response_item"
47
48
  require_relative "trophy/admin/streaks/types/restore_streaks_request_users_item"
@@ -123,6 +124,11 @@ require_relative "trophy/types/streak_metric_preference"
123
124
  require_relative "trophy/types/streak_preferences"
124
125
  require_relative "trophy/types/user_preferences_response"
125
126
  require_relative "trophy/types/error_body"
127
+ require_relative "trophy/types/reward_summary_type"
128
+ require_relative "trophy/types/reward_summary"
129
+ require_relative "trophy/types/user_reward_trigger_type"
130
+ require_relative "trophy/types/user_reward_trigger"
131
+ require_relative "trophy/types/user_reward_response"
126
132
  require_relative "trophy/types/achievement_completion_response"
127
133
  require_relative "trophy/types/event_response"
128
134
  require_relative "trophy/types/points_range"
@@ -141,6 +147,11 @@ require_relative "trophy/types/wrapped_most_active_month"
141
147
  require_relative "trophy/types/wrapped_entire_year"
142
148
  require_relative "trophy/types/wrapped_activity"
143
149
  require_relative "trophy/types/wrapped_response"
150
+ require_relative "trophy/types/redeemed_reward"
151
+ require_relative "trophy/types/redeem_reward_response"
152
+ require_relative "trophy/types/reward_webhook_event_type"
153
+ require_relative "trophy/types/reward_webhook_event_redemption"
154
+ require_relative "trophy/types/reward_webhook_event"
144
155
  require_relative "trophy/types/admin_error_body"
145
156
  require_relative "trophy/types/batch_metric_event_user"
146
157
  require_relative "trophy/types/batch_metric_event"
@@ -191,16 +202,19 @@ require_relative "trophy/types/list_achievements_response"
191
202
  require_relative "trophy/types/create_leaderboard_request_item_status"
192
203
  require_relative "trophy/types/create_leaderboard_request_item_rank_by"
193
204
  require_relative "trophy/types/create_leaderboard_request_item_run_unit"
205
+ require_relative "trophy/types/create_leaderboard_request_item_user_attributes_item"
194
206
  require_relative "trophy/types/create_leaderboard_request_item"
195
207
  require_relative "trophy/types/create_leaderboards_request"
196
208
  require_relative "trophy/types/admin_leaderboard_status"
197
209
  require_relative "trophy/types/admin_leaderboard_rank_by"
198
210
  require_relative "trophy/types/admin_leaderboard_run_unit"
211
+ require_relative "trophy/types/admin_leaderboard_user_attributes_item"
199
212
  require_relative "trophy/types/admin_leaderboard"
200
213
  require_relative "trophy/types/create_leaderboards_response"
201
214
  require_relative "trophy/types/update_leaderboard_request_item_status"
202
215
  require_relative "trophy/types/update_leaderboard_request_item_rank_by"
203
216
  require_relative "trophy/types/update_leaderboard_request_item_run_unit"
217
+ require_relative "trophy/types/update_leaderboard_request_item_user_attributes_item"
204
218
  require_relative "trophy/types/update_leaderboard_request_item"
205
219
  require_relative "trophy/types/update_leaderboards_request"
206
220
  require_relative "trophy/types/update_leaderboards_response"
@@ -320,16 +334,59 @@ require_relative "trophy/types/update_tenant_request_item"
320
334
  require_relative "trophy/types/update_tenants_request"
321
335
  require_relative "trophy/types/update_tenants_response"
322
336
  require_relative "trophy/types/delete_tenants_response"
337
+ require_relative "trophy/types/create_reward_trigger_request_item_type"
338
+ require_relative "trophy/types/create_reward_trigger_request_item_status"
339
+ require_relative "trophy/types/create_reward_trigger_request_item_user_attributes_item"
340
+ require_relative "trophy/types/create_reward_trigger_request_item_event_attributes_item"
341
+ require_relative "trophy/types/create_reward_trigger_request_item"
342
+ require_relative "trophy/types/create_reward_triggers_request"
343
+ require_relative "trophy/types/admin_reward_trigger_type"
344
+ require_relative "trophy/types/admin_reward_trigger_status"
345
+ require_relative "trophy/types/admin_reward_trigger_user_attributes_item"
346
+ require_relative "trophy/types/admin_reward_trigger_event_attributes_item"
347
+ require_relative "trophy/types/admin_reward_trigger"
348
+ require_relative "trophy/types/list_reward_triggers_response"
349
+ require_relative "trophy/types/create_reward_triggers_response"
350
+ require_relative "trophy/types/update_reward_triggers_request_item_type"
351
+ require_relative "trophy/types/update_reward_triggers_request_item_status"
352
+ require_relative "trophy/types/update_reward_triggers_request_item_user_attributes_item"
353
+ require_relative "trophy/types/update_reward_triggers_request_item_event_attributes_item"
354
+ require_relative "trophy/types/update_reward_triggers_request_item"
355
+ require_relative "trophy/types/update_reward_triggers_request"
356
+ require_relative "trophy/types/update_reward_triggers_response"
357
+ require_relative "trophy/types/delete_reward_triggers_response"
358
+ require_relative "trophy/types/create_reward_request_item_status"
359
+ require_relative "trophy/types/create_reward_request_item_type"
360
+ require_relative "trophy/types/create_reward_request_item_user_attributes_item"
361
+ require_relative "trophy/types/create_reward_request_item"
362
+ require_relative "trophy/types/create_rewards_request"
363
+ require_relative "trophy/types/admin_reward_status"
364
+ require_relative "trophy/types/admin_reward_type"
365
+ require_relative "trophy/types/admin_reward_user_attributes_item"
366
+ require_relative "trophy/types/admin_reward"
367
+ require_relative "trophy/types/created_admin_reward"
368
+ require_relative "trophy/types/list_rewards_response"
369
+ require_relative "trophy/types/create_rewards_response"
370
+ require_relative "trophy/types/update_reward_request_item_status"
371
+ require_relative "trophy/types/update_reward_request_item_type"
372
+ require_relative "trophy/types/update_reward_request_item_user_attributes_item"
373
+ require_relative "trophy/types/update_reward_request_item"
374
+ require_relative "trophy/types/update_rewards_request"
375
+ require_relative "trophy/types/update_rewards_response"
376
+ require_relative "trophy/types/delete_rewards_response"
323
377
  require_relative "trophy/client"
324
378
  require_relative "trophy/achievements/client"
325
379
  require_relative "trophy/achievements/types/achievements_all_request"
326
380
  require_relative "trophy/achievements/types/achievements_complete_request"
381
+ require_relative "trophy/rewards/client"
382
+ require_relative "trophy/rewards/types/rewards_redeem_request"
327
383
  require_relative "trophy/metrics/client"
328
384
  require_relative "trophy/metrics/types/metrics_event_request"
329
385
  require_relative "trophy/users/client"
330
386
  require_relative "trophy/users/types/update_user_preferences_request"
331
387
  require_relative "trophy/users/types/users_metric_event_summary_request"
332
388
  require_relative "trophy/users/types/users_achievements_request"
389
+ require_relative "trophy/users/types/users_rewards_request"
333
390
  require_relative "trophy/users/types/users_streak_request"
334
391
  require_relative "trophy/users/types/users_points_request"
335
392
  require_relative "trophy/users/types/users_points_event_summary_request"
@@ -350,6 +407,9 @@ require_relative "trophy/admin/attributes/types/attributes_delete_request"
350
407
  require_relative "trophy/admin/achievements/client"
351
408
  require_relative "trophy/admin/achievements/types/achievements_list_request"
352
409
  require_relative "trophy/admin/achievements/types/achievements_delete_request"
410
+ require_relative "trophy/admin/rewards/client"
411
+ require_relative "trophy/admin/rewards/types/rewards_list_request"
412
+ require_relative "trophy/admin/rewards/types/rewards_delete_request"
353
413
  require_relative "trophy/admin/metrics/client"
354
414
  require_relative "trophy/admin/metrics/types/metrics_list_request"
355
415
  require_relative "trophy/admin/metrics/types/metrics_delete_request"
@@ -380,6 +440,9 @@ require_relative "trophy/admin/points/levels/types/levels_delete_request"
380
440
  require_relative "trophy/admin/points/triggers/client"
381
441
  require_relative "trophy/admin/points/triggers/types/triggers_list_request"
382
442
  require_relative "trophy/admin/points/triggers/types/triggers_delete_request"
443
+ require_relative "trophy/admin/rewards/triggers/client"
444
+ require_relative "trophy/admin/rewards/triggers/types/triggers_list_request"
445
+ require_relative "trophy/admin/rewards/triggers/types/triggers_delete_request"
383
446
  require_relative "trophy/admin/streaks/freezes/client"
384
447
  require_relative "trophy/admin/streaks/freezes/types/create_streak_freezes_request"
385
448
  require_relative "trophy/admin/streaks/pauses/client"