trophy_api_client 1.14.0 → 1.27.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.
- checksums.yaml +4 -4
- data/.fern/metadata.json +9 -0
- data/.rubocop.yml +103 -0
- data/CONTRIBUTING.md +120 -0
- data/LICENSE +21 -0
- data/README.md +50 -0
- data/Rakefile +13 -0
- data/custom.gemspec.rb +5 -0
- data/lib/gemconfig.rb +1 -1
- data/lib/trophy/achievements/client.rb +93 -0
- data/lib/trophy/achievements/types/achievements_all_request.rb +11 -0
- data/lib/trophy/achievements/types/achievements_complete_request.rb +13 -0
- data/lib/trophy/admin/achievements/client.rb +201 -0
- data/lib/trophy/admin/achievements/types/achievements_delete_request.rb +13 -0
- data/lib/trophy/admin/achievements/types/achievements_list_request.rb +15 -0
- data/lib/trophy/admin/application_api_keys/client.rb +93 -0
- data/lib/trophy/admin/application_api_keys/types/application_api_keys_delete_request.rb +13 -0
- data/lib/trophy/admin/attributes/client.rb +200 -0
- data/lib/trophy/admin/attributes/types/attributes_delete_request.rb +13 -0
- data/lib/trophy/admin/attributes/types/attributes_list_request.rb +15 -0
- data/lib/trophy/admin/client.rb +68 -0
- data/lib/trophy/admin/environments/client.rb +52 -0
- data/lib/trophy/admin/leaderboards/client.rb +201 -0
- data/lib/trophy/admin/leaderboards/types/leaderboards_delete_request.rb +13 -0
- data/lib/trophy/admin/leaderboards/types/leaderboards_list_request.rb +15 -0
- data/lib/trophy/admin/metrics/client.rb +234 -0
- data/lib/trophy/admin/metrics/types/metrics_delete_request.rb +13 -0
- data/lib/trophy/admin/metrics/types/metrics_list_request.rb +15 -0
- data/lib/trophy/admin/points/boosts/client.rb +207 -0
- data/lib/trophy/admin/points/boosts/types/boosts_delete_request.rb +17 -0
- data/lib/trophy/admin/points/boosts/types/boosts_list_request.rb +19 -0
- data/lib/trophy/admin/points/client.rb +40 -0
- data/lib/trophy/admin/points/levels/client.rb +207 -0
- data/lib/trophy/admin/points/levels/types/levels_delete_request.rb +17 -0
- data/lib/trophy/admin/points/levels/types/levels_list_request.rb +19 -0
- data/lib/trophy/admin/points/systems/client.rb +203 -0
- data/lib/trophy/admin/points/systems/types/systems_delete_request.rb +15 -0
- data/lib/trophy/admin/points/systems/types/systems_list_request.rb +17 -0
- data/lib/trophy/admin/points/triggers/client.rb +208 -0
- data/lib/trophy/admin/points/triggers/types/triggers_delete_request.rb +17 -0
- data/lib/trophy/admin/points/triggers/types/triggers_list_request.rb +19 -0
- data/lib/trophy/admin/settings/client.rb +86 -0
- data/lib/trophy/admin/settings/types/update_admin_settings_request.rb +17 -0
- data/lib/trophy/admin/streaks/client.rb +106 -0
- data/lib/trophy/admin/streaks/freezes/client.rb +56 -0
- data/lib/trophy/admin/streaks/freezes/types/create_streak_freezes_request.rb +15 -0
- data/lib/trophy/admin/streaks/freezes/types/create_streak_freezes_request_freezes_item.rb +15 -0
- data/lib/trophy/admin/streaks/pauses/client.rb +95 -0
- data/lib/trophy/admin/streaks/pauses/types/create_streak_pauses_request.rb +15 -0
- data/lib/trophy/admin/streaks/pauses/types/create_streak_pauses_request_pauses_item.rb +19 -0
- data/lib/trophy/admin/streaks/pauses/types/pauses_delete_request.rb +15 -0
- data/lib/trophy/admin/streaks/settings/client.rb +88 -0
- data/lib/trophy/admin/streaks/settings/types/update_streak_settings_request.rb +25 -0
- data/lib/trophy/admin/streaks/types/reset_streaks_request.rb +13 -0
- data/lib/trophy/admin/streaks/types/reset_streaks_request_users_item.rb +13 -0
- data/lib/trophy/admin/streaks/types/restore_streaks_request.rb +13 -0
- data/lib/trophy/admin/streaks/types/restore_streaks_request_users_item.rb +13 -0
- data/lib/trophy/admin/tenants/client.rb +200 -0
- data/lib/trophy/admin/tenants/types/tenants_delete_request.rb +13 -0
- data/lib/trophy/admin/tenants/types/tenants_list_request.rb +15 -0
- data/lib/trophy/client.rb +62 -0
- data/lib/{environment.rb → trophy/environment.rb} +1 -1
- data/lib/trophy/errors/api_error.rb +8 -0
- data/lib/trophy/errors/client_error.rb +17 -0
- data/lib/trophy/errors/redirect_error.rb +8 -0
- data/lib/trophy/errors/response_error.rb +42 -0
- data/lib/trophy/errors/server_error.rb +11 -0
- data/lib/trophy/errors/timeout_error.rb +8 -0
- data/lib/trophy/internal/errors/constraint_error.rb +10 -0
- data/lib/trophy/internal/errors/type_error.rb +10 -0
- data/lib/trophy/internal/http/base_request.rb +51 -0
- data/lib/trophy/internal/http/raw_client.rb +215 -0
- data/lib/trophy/internal/iterators/cursor_item_iterator.rb +28 -0
- data/lib/trophy/internal/iterators/cursor_page_iterator.rb +63 -0
- data/lib/trophy/internal/iterators/item_iterator.rb +65 -0
- data/lib/trophy/internal/iterators/offset_item_iterator.rb +30 -0
- data/lib/trophy/internal/iterators/offset_page_iterator.rb +103 -0
- data/lib/trophy/internal/json/request.rb +41 -0
- data/lib/trophy/internal/json/serializable.rb +25 -0
- data/lib/trophy/internal/multipart/multipart_encoder.rb +141 -0
- data/lib/trophy/internal/multipart/multipart_form_data.rb +78 -0
- data/lib/trophy/internal/multipart/multipart_form_data_part.rb +51 -0
- data/lib/trophy/internal/multipart/multipart_request.rb +40 -0
- data/lib/trophy/internal/types/array.rb +47 -0
- data/lib/trophy/internal/types/boolean.rb +34 -0
- data/lib/trophy/internal/types/enum.rb +56 -0
- data/lib/trophy/internal/types/hash.rb +36 -0
- data/lib/trophy/internal/types/model/field.rb +38 -0
- data/lib/trophy/internal/types/model.rb +208 -0
- data/lib/trophy/internal/types/type.rb +35 -0
- data/lib/trophy/internal/types/union.rb +161 -0
- data/lib/trophy/internal/types/unknown.rb +15 -0
- data/lib/trophy/internal/types/utils.rb +116 -0
- data/lib/trophy/leaderboards/client.rb +101 -0
- data/lib/trophy/leaderboards/types/leaderboards_all_request.rb +11 -0
- data/lib/trophy/leaderboards/types/leaderboards_all_response_item.rb +49 -0
- data/lib/trophy/leaderboards/types/leaderboards_all_response_item_status.rb +15 -0
- data/lib/trophy/leaderboards/types/leaderboards_get_request.rb +21 -0
- data/lib/trophy/metrics/client.rb +62 -0
- data/lib/trophy/metrics/types/metrics_event_request.rb +19 -0
- data/lib/trophy/points/client.rb +194 -0
- data/lib/trophy/points/types/points_boosts_request.rb +13 -0
- data/lib/trophy/points/types/points_summary_request.rb +13 -0
- data/lib/trophy/streaks/client.rb +56 -0
- data/lib/trophy/streaks/types/streaks_list_request.rb +11 -0
- data/lib/trophy/types/achievement_completion_response.rb +13 -0
- data/lib/trophy/types/achievement_response.rb +37 -0
- data/lib/trophy/types/achievement_response_event_attribute.rb +13 -0
- data/lib/trophy/types/achievement_response_event_attributes_item.rb +11 -0
- data/lib/trophy/types/achievement_response_trigger.rb +15 -0
- data/lib/trophy/types/achievement_response_user_attributes_item.rb +11 -0
- data/lib/trophy/types/achievement_with_stats_response.rb +41 -0
- data/lib/trophy/types/admin_achievement.rb +37 -0
- data/lib/trophy/types/admin_achievement_badge.rb +9 -0
- data/lib/trophy/types/admin_achievement_event_attributes_item.rb +11 -0
- data/lib/trophy/types/admin_achievement_status.rb +13 -0
- data/lib/trophy/types/admin_achievement_trigger.rb +15 -0
- data/lib/trophy/types/admin_achievement_user_attributes_item.rb +11 -0
- data/lib/trophy/types/admin_aggregation_period.rb +12 -0
- data/lib/trophy/types/admin_attribute.rb +16 -0
- data/lib/trophy/types/admin_attribute_type.rb +12 -0
- data/lib/trophy/types/admin_environment.rb +14 -0
- data/lib/trophy/types/admin_error_body.rb +9 -0
- data/lib/trophy/types/admin_font_family.rb +19 -0
- data/lib/trophy/types/admin_issue.rb +20 -0
- data/lib/trophy/types/admin_issue_severity.rb +12 -0
- data/lib/trophy/types/admin_leaderboard.rb +42 -0
- data/lib/trophy/types/admin_leaderboard_rank_by.rb +13 -0
- data/lib/trophy/types/admin_leaderboard_run_unit.rb +13 -0
- data/lib/trophy/types/admin_leaderboard_status.rb +14 -0
- data/lib/trophy/types/admin_leaderboard_user_attributes_item.rb +11 -0
- data/lib/trophy/types/admin_points_boost.rb +26 -0
- data/lib/trophy/types/admin_points_boost_rounding.rb +13 -0
- data/lib/{trophy_api_client/leaderboards/types/leaderboards_all_response_item_status.rb → trophy/types/admin_points_boost_status.rb} +5 -4
- data/lib/trophy/types/admin_points_boost_user_attributes_item.rb +11 -0
- data/lib/trophy/types/admin_points_level.rb +20 -0
- data/lib/trophy/types/admin_points_level_badge.rb +9 -0
- data/lib/trophy/types/admin_points_system.rb +22 -0
- data/lib/trophy/types/admin_points_system_badge.rb +9 -0
- data/lib/trophy/types/admin_points_system_status.rb +12 -0
- data/lib/trophy/types/admin_points_trigger.rb +34 -0
- data/lib/trophy/types/admin_points_trigger_event_attributes_item.rb +11 -0
- data/lib/trophy/types/admin_points_trigger_status.rb +12 -0
- data/lib/trophy/types/admin_points_trigger_time_unit.rb +12 -0
- data/lib/trophy/types/admin_points_trigger_type.rb +15 -0
- data/lib/trophy/types/admin_points_trigger_user_attributes_item.rb +11 -0
- data/lib/trophy/types/admin_settings.rb +14 -0
- data/lib/trophy/types/admin_settings_branding.rb +20 -0
- data/lib/trophy/types/admin_settings_branding_app_icon.rb +9 -0
- data/lib/trophy/types/admin_settings_branding_logo.rb +9 -0
- data/lib/trophy/types/admin_settings_experimentation.rb +12 -0
- data/lib/trophy/types/admin_streak_evaluation_mode.rb +12 -0
- data/lib/{trophy_api_client/users/types/users_points_event_summary_request_aggregation.rb → trophy/types/admin_streak_frequency.rb} +5 -3
- data/lib/trophy/types/admin_streak_pause.rb +18 -0
- data/lib/trophy/types/admin_streak_pause_status.rb +12 -0
- data/lib/trophy/types/admin_tenant.rb +20 -0
- data/lib/trophy/types/admin_tenant_status.rb +12 -0
- data/lib/trophy/types/base_streak_response.rb +27 -0
- data/lib/trophy/types/batch_events_response.rb +10 -0
- data/lib/trophy/types/batch_metric_event.rb +19 -0
- data/lib/trophy/types/batch_metric_event_user.rb +22 -0
- data/lib/trophy/types/bulk_streak_response.rb +23 -0
- data/lib/trophy/types/bulk_streak_response_item.rb +13 -0
- data/lib/trophy/types/create_achievement_request_item.rb +35 -0
- data/lib/trophy/types/create_achievement_request_item_badge.rb +10 -0
- data/lib/trophy/types/create_achievement_request_item_event_attributes_item.rb +11 -0
- data/lib/trophy/types/create_achievement_request_item_status.rb +13 -0
- data/lib/trophy/types/create_achievement_request_item_trigger.rb +15 -0
- data/lib/trophy/types/create_achievement_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/create_achievements_request.rb +23 -0
- data/lib/trophy/types/create_achievements_response.rb +12 -0
- data/lib/trophy/types/create_application_key_request_item.rb +10 -0
- data/lib/trophy/types/create_application_keys_request.rb +23 -0
- data/lib/trophy/types/create_application_keys_response.rb +12 -0
- data/lib/trophy/types/create_attribute_request_item.rb +14 -0
- data/lib/trophy/types/create_attribute_request_item_type.rb +12 -0
- data/lib/trophy/types/create_attributes_request.rb +23 -0
- data/lib/trophy/types/create_attributes_response.rb +12 -0
- data/lib/trophy/types/create_leaderboard_request_item.rb +40 -0
- data/lib/trophy/types/create_leaderboard_request_item_rank_by.rb +13 -0
- data/lib/trophy/types/create_leaderboard_request_item_run_unit.rb +13 -0
- data/lib/trophy/types/create_leaderboard_request_item_status.rb +14 -0
- data/lib/trophy/types/create_leaderboard_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/create_leaderboards_request.rb +23 -0
- data/lib/trophy/types/create_leaderboards_response.rb +12 -0
- data/lib/trophy/types/create_metric_request_item.rb +16 -0
- data/lib/trophy/types/create_metric_request_item_unit_type.rb +12 -0
- data/lib/trophy/types/create_metrics_request.rb +23 -0
- data/lib/trophy/types/create_metrics_response.rb +12 -0
- data/lib/trophy/types/create_points_boost_request_item.rb +23 -0
- data/lib/trophy/types/create_points_boost_request_item_rounding.rb +13 -0
- data/lib/trophy/types/create_points_boost_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/create_points_boosts_request.rb +23 -0
- data/lib/trophy/types/create_points_boosts_response.rb +12 -0
- data/lib/trophy/types/create_points_level_request_item.rb +18 -0
- data/lib/trophy/types/create_points_level_request_item_badge.rb +10 -0
- data/lib/trophy/types/create_points_levels_request.rb +23 -0
- data/lib/trophy/types/create_points_levels_response.rb +12 -0
- data/lib/trophy/types/create_points_system_request_item.rb +24 -0
- data/lib/trophy/types/create_points_system_request_item_badge.rb +9 -0
- data/lib/trophy/types/create_points_systems_request.rb +23 -0
- data/lib/trophy/types/create_points_systems_response.rb +12 -0
- data/lib/trophy/types/create_points_trigger_request_item.rb +32 -0
- data/lib/trophy/types/create_points_trigger_request_item_event_attributes_item.rb +11 -0
- data/lib/trophy/types/create_points_trigger_request_item_status.rb +12 -0
- data/lib/trophy/types/create_points_trigger_request_item_time_unit.rb +12 -0
- data/lib/trophy/types/create_points_trigger_request_item_type.rb +15 -0
- data/lib/trophy/types/create_points_trigger_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/create_points_triggers_request.rb +23 -0
- data/lib/trophy/types/create_points_triggers_response.rb +12 -0
- data/lib/trophy/types/create_streak_freezes_response.rb +10 -0
- data/lib/trophy/types/create_streak_pauses_response.rb +12 -0
- data/lib/trophy/types/create_tenant_request_item.rb +12 -0
- data/lib/trophy/types/create_tenants_request.rb +23 -0
- data/lib/trophy/types/create_tenants_response.rb +12 -0
- data/lib/trophy/types/created_admin_points_system.rb +29 -0
- data/lib/trophy/types/created_application_key.rb +16 -0
- data/lib/trophy/types/created_metric.rb +18 -0
- data/lib/trophy/types/created_metric_unit_type.rb +12 -0
- data/lib/trophy/types/delete_achievements_response.rb +13 -0
- data/lib/trophy/types/delete_application_keys_response.rb +12 -0
- data/lib/trophy/types/delete_attributes_response.rb +13 -0
- data/lib/trophy/types/delete_leaderboards_response.rb +12 -0
- data/lib/trophy/types/delete_metrics_response.rb +13 -0
- data/lib/trophy/types/delete_points_boosts_response.rb +12 -0
- data/lib/trophy/types/delete_points_levels_response.rb +12 -0
- data/lib/trophy/types/delete_points_systems_response.rb +12 -0
- data/lib/trophy/types/delete_points_triggers_response.rb +12 -0
- data/lib/trophy/types/delete_streak_pauses_response.rb +12 -0
- data/lib/trophy/types/delete_tenants_response.rb +12 -0
- data/lib/trophy/types/deleted_resource.rb +10 -0
- data/lib/trophy/types/error_body.rb +9 -0
- data/lib/trophy/types/event_response.rb +25 -0
- data/lib/trophy/types/get_user_points_response.rb +25 -0
- data/lib/trophy/types/leaderboard_event.rb +20 -0
- data/lib/trophy/types/leaderboard_ranking.rb +16 -0
- data/lib/trophy/types/leaderboard_response.rb +46 -0
- data/lib/trophy/types/leaderboard_response_rank_by.rb +13 -0
- data/lib/trophy/types/leaderboard_response_run_unit.rb +13 -0
- data/lib/trophy/types/leaderboard_response_user_attributes_item.rb +11 -0
- data/lib/trophy/types/leaderboard_response_with_rankings.rb +49 -0
- data/lib/trophy/types/leaderboard_response_with_rankings_status.rb +13 -0
- data/lib/trophy/types/list_achievements_response.rb +23 -0
- data/lib/trophy/types/list_attributes_response.rb +23 -0
- data/lib/trophy/types/list_environments_response.rb +23 -0
- data/lib/trophy/types/list_leaderboards_response.rb +23 -0
- data/lib/trophy/types/list_metrics_response.rb +23 -0
- data/lib/trophy/types/list_points_boosts_response.rb +23 -0
- data/lib/trophy/types/list_points_levels_response.rb +23 -0
- data/lib/trophy/types/list_points_systems_response.rb +23 -0
- data/lib/trophy/types/list_points_triggers_response.rb +23 -0
- data/lib/trophy/types/list_tenants_response.rb +23 -0
- data/lib/trophy/types/metric_event_leaderboard_response.rb +55 -0
- data/lib/trophy/types/metric_event_leaderboard_response_breakdown_attribute_values_item.rb +11 -0
- data/lib/trophy/types/metric_event_points_response.rb +28 -0
- data/lib/trophy/types/metric_event_streak_response.rb +30 -0
- data/lib/trophy/types/metric_response.rb +17 -0
- data/lib/trophy/types/notification_channel.rb +12 -0
- data/lib/trophy/types/notification_preferences.rb +16 -0
- data/lib/trophy/types/patch_points_boosts_request.rb +23 -0
- data/lib/trophy/types/patch_points_boosts_request_item.rb +21 -0
- data/lib/trophy/types/patch_points_boosts_request_item_rounding.rb +13 -0
- data/lib/trophy/types/patch_points_boosts_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/patch_points_boosts_response.rb +12 -0
- data/lib/trophy/types/patch_points_levels_request.rb +23 -0
- data/lib/trophy/types/patch_points_levels_request_item.rb +17 -0
- data/lib/trophy/types/patch_points_levels_request_item_badge.rb +9 -0
- data/lib/trophy/types/patch_points_levels_response.rb +12 -0
- data/lib/trophy/types/patch_points_triggers_request.rb +23 -0
- data/lib/trophy/types/patch_points_triggers_request_item.rb +33 -0
- data/lib/trophy/types/patch_points_triggers_request_item_event_attributes_item.rb +11 -0
- data/lib/trophy/types/patch_points_triggers_request_item_status.rb +12 -0
- data/lib/trophy/types/patch_points_triggers_request_item_time_unit.rb +12 -0
- data/lib/trophy/types/patch_points_triggers_request_item_type.rb +15 -0
- data/lib/trophy/types/patch_points_triggers_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/patch_points_triggers_response.rb +12 -0
- data/lib/trophy/types/points_award.rb +19 -0
- data/lib/trophy/types/points_boost.rb +21 -0
- data/lib/trophy/types/points_boost_rounding.rb +13 -0
- data/lib/trophy/types/points_boost_status.rb +13 -0
- data/lib/trophy/types/points_boost_webhook_payload.rb +30 -0
- data/lib/trophy/types/points_boost_webhook_payload_rounding.rb +13 -0
- data/lib/trophy/types/points_boost_webhook_payload_status.rb +12 -0
- data/lib/trophy/types/points_level.rb +20 -0
- data/lib/trophy/types/points_level_summary_response.rb +23 -0
- data/lib/trophy/types/points_level_summary_response_item.rb +11 -0
- data/lib/trophy/types/points_range.rb +13 -0
- data/lib/trophy/types/points_response.rb +20 -0
- data/lib/trophy/types/points_summary_response.rb +23 -0
- data/lib/trophy/types/points_system_response.rb +19 -0
- data/lib/trophy/types/points_trigger.rb +41 -0
- data/lib/trophy/types/points_trigger_event_attribute.rb +13 -0
- data/lib/trophy/types/points_trigger_event_attributes_item.rb +11 -0
- data/lib/trophy/types/points_trigger_status.rb +13 -0
- data/lib/trophy/types/points_trigger_time_unit.rb +12 -0
- data/lib/trophy/types/points_trigger_type.rb +15 -0
- data/lib/trophy/types/points_trigger_user_attributes_item.rb +11 -0
- data/lib/trophy/types/reset_streaks_response.rb +12 -0
- data/lib/trophy/types/restore_streaks_response.rb +12 -0
- data/lib/trophy/types/streak_evaluation_mode_preference.rb +12 -0
- data/lib/{trophy_api_client/users/types/users_metric_event_summary_request_aggregation.rb → trophy/types/streak_frequency.rb} +5 -3
- data/lib/trophy/types/streak_metric_preference.rb +12 -0
- data/lib/trophy/types/streak_preferences.rb +17 -0
- data/lib/trophy/types/streak_response.rb +34 -0
- data/lib/trophy/types/streak_response_pauses_item.rb +14 -0
- data/lib/trophy/types/streak_response_streak_history_item.rb +20 -0
- data/lib/trophy/types/streak_settings.rb +20 -0
- data/lib/trophy/types/streak_settings_freezes.rb +16 -0
- data/lib/trophy/types/streak_settings_metric.rb +12 -0
- data/lib/trophy/types/update_achievement_request_item.rb +37 -0
- data/lib/trophy/types/update_achievement_request_item_badge.rb +9 -0
- data/lib/trophy/types/update_achievement_request_item_event_attributes_item.rb +11 -0
- data/lib/trophy/types/update_achievement_request_item_status.rb +13 -0
- data/lib/trophy/types/update_achievement_request_item_trigger.rb +15 -0
- data/lib/trophy/types/update_achievement_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/update_achievements_request.rb +23 -0
- data/lib/trophy/types/update_achievements_response.rb +12 -0
- data/lib/trophy/types/update_admin_settings_branding.rb +20 -0
- data/lib/trophy/types/update_admin_settings_branding_app_icon.rb +9 -0
- data/lib/trophy/types/update_admin_settings_branding_logo.rb +9 -0
- data/lib/trophy/types/update_admin_settings_experimentation.rb +12 -0
- data/lib/trophy/types/update_attribute_request_item.rb +13 -0
- data/lib/trophy/types/update_attributes_request.rb +23 -0
- data/lib/trophy/types/update_attributes_response.rb +12 -0
- data/lib/trophy/types/update_leaderboard_request_item.rb +43 -0
- data/lib/trophy/types/update_leaderboard_request_item_rank_by.rb +13 -0
- data/lib/trophy/types/update_leaderboard_request_item_run_unit.rb +13 -0
- data/lib/trophy/types/update_leaderboard_request_item_status.rb +14 -0
- data/lib/trophy/types/update_leaderboard_request_item_user_attributes_item.rb +11 -0
- data/lib/trophy/types/update_leaderboards_request.rb +23 -0
- data/lib/trophy/types/update_leaderboards_response.rb +12 -0
- data/lib/trophy/types/update_metric_request_item.rb +17 -0
- data/lib/trophy/types/update_metric_request_item_unit_type.rb +12 -0
- data/lib/trophy/types/update_metrics_request.rb +23 -0
- data/lib/trophy/types/update_metrics_response.rb +12 -0
- data/lib/trophy/types/update_points_system_request_item.rb +18 -0
- data/lib/trophy/types/update_points_system_request_item_badge.rb +9 -0
- data/lib/trophy/types/update_points_systems_request.rb +23 -0
- data/lib/trophy/types/update_points_systems_response.rb +12 -0
- data/lib/trophy/types/update_streak_settings_freezes.rb +17 -0
- data/lib/trophy/types/update_tenant_request_item.rb +14 -0
- data/lib/trophy/types/update_tenants_request.rb +23 -0
- data/lib/trophy/types/update_tenants_response.rb +12 -0
- data/lib/trophy/types/updated_user.rb +22 -0
- data/lib/trophy/types/upserted_user.rb +24 -0
- data/lib/trophy/types/user.rb +30 -0
- data/lib/trophy/types/user_achievement_response.rb +39 -0
- data/lib/trophy/types/user_achievement_with_stats_response.rb +43 -0
- data/lib/trophy/types/user_leaderboard_response.rb +50 -0
- data/lib/trophy/types/user_leaderboard_response_with_history.rb +52 -0
- data/lib/trophy/types/user_preferences_response.rb +12 -0
- data/lib/trophy/types/webhook_user_leaderboard_response.rb +54 -0
- data/lib/trophy/types/webhooks_achievement_completed_payload.rb +13 -0
- data/lib/trophy/types/webhooks_emails_achievement_due_payload.rb +15 -0
- data/lib/trophy/types/webhooks_emails_reactivation_due_payload.rb +15 -0
- data/lib/trophy/types/webhooks_emails_reactivation_due_payload_reactivation.rb +12 -0
- data/lib/trophy/types/webhooks_emails_recap_due_payload.rb +15 -0
- data/lib/trophy/types/webhooks_emails_recap_due_payload_recap.rb +12 -0
- data/lib/trophy/types/webhooks_emails_streak_reminder_due_payload.rb +15 -0
- data/lib/trophy/types/webhooks_leaderboard_changed_payload.rb +11 -0
- data/lib/trophy/types/webhooks_leaderboard_finished_payload.rb +11 -0
- data/lib/trophy/types/webhooks_leaderboard_rank_changed_payload.rb +13 -0
- data/lib/trophy/types/webhooks_leaderboard_started_payload.rb +11 -0
- data/lib/trophy/types/webhooks_points_boost_finished_payload.rb +13 -0
- data/lib/trophy/types/webhooks_points_boost_started_payload.rb +13 -0
- data/lib/trophy/types/webhooks_points_changed_payload.rb +13 -0
- data/lib/trophy/types/webhooks_points_level_changed_payload.rb +17 -0
- data/lib/trophy/types/webhooks_points_level_changed_payload_points.rb +22 -0
- data/lib/trophy/types/webhooks_streak_extended_payload.rb +13 -0
- data/lib/trophy/types/webhooks_streak_freeze_consumed_payload.rb +15 -0
- data/lib/trophy/types/webhooks_streak_freeze_earned_payload.rb +15 -0
- data/lib/trophy/types/webhooks_streak_lost_payload.rb +13 -0
- data/lib/trophy/types/webhooks_streak_started_payload.rb +13 -0
- data/lib/trophy/types/wrapped_activity.rb +22 -0
- data/lib/trophy/types/wrapped_activity_period.rb +16 -0
- data/lib/trophy/types/wrapped_entire_year.rb +18 -0
- data/lib/trophy/types/wrapped_metric.rb +22 -0
- data/lib/trophy/types/wrapped_metric_by_attribute_value_value.rb +19 -0
- data/lib/trophy/types/wrapped_most_active_day.rb +18 -0
- data/lib/trophy/types/wrapped_most_active_month.rb +18 -0
- data/lib/trophy/types/wrapped_most_active_week.rb +20 -0
- data/lib/trophy/types/wrapped_points.rb +20 -0
- data/lib/trophy/types/wrapped_response.rb +13 -0
- data/lib/trophy/types/wrapped_streak.rb +18 -0
- data/lib/trophy/users/client.rb +612 -0
- data/lib/trophy/users/types/update_user_preferences_request.rb +15 -0
- data/lib/trophy/users/types/users_achievements_request.rb +13 -0
- data/lib/trophy/users/types/users_leaderboard_request.rb +17 -0
- data/lib/trophy/users/types/users_metric_event_summary_request.rb +19 -0
- data/lib/trophy/users/types/users_metric_event_summary_request_aggregation.rb +15 -0
- data/lib/trophy/users/types/users_metric_event_summary_response_item.rb +15 -0
- data/lib/trophy/users/types/users_points_event_summary_request.rb +19 -0
- data/lib/trophy/users/types/users_points_event_summary_request_aggregation.rb +15 -0
- data/lib/trophy/users/types/users_points_event_summary_response_item.rb +15 -0
- data/lib/trophy/users/types/users_points_request.rb +15 -0
- data/lib/trophy/users/types/users_streak_request.rb +13 -0
- data/lib/trophy/users/types/users_wrapped_request.rb +13 -0
- data/lib/trophy/version.rb +5 -0
- data/lib/trophy.rb +394 -0
- data/lib/trophy_api_client.rb +4 -101
- data/reference.md +6128 -0
- metadata +407 -333
- data/lib/requests.rb +0 -189
- data/lib/trophy_api_client/achievements/client.rb +0 -196
- data/lib/trophy_api_client/admin/attributes/client.rb +0 -378
- data/lib/trophy_api_client/admin/client.rb +0 -65
- data/lib/trophy_api_client/admin/leaderboards/client.rb +0 -381
- data/lib/trophy_api_client/admin/metrics/client.rb +0 -376
- data/lib/trophy_api_client/admin/points/boosts/client.rb +0 -410
- data/lib/trophy_api_client/admin/points/client.rb +0 -53
- data/lib/trophy_api_client/admin/points/levels/client.rb +0 -412
- data/lib/trophy_api_client/admin/points/systems/client.rb +0 -384
- data/lib/trophy_api_client/admin/points/triggers/client.rb +0 -412
- data/lib/trophy_api_client/admin/streaks/client.rb +0 -106
- data/lib/trophy_api_client/admin/streaks/freezes/client.rb +0 -100
- data/lib/trophy_api_client/admin/streaks/freezes/types/create_streak_freezes_request_freezes_item.rb +0 -62
- data/lib/trophy_api_client/admin/streaks/types/restore_streaks_request_users_item.rb +0 -59
- data/lib/trophy_api_client/admin/tenants/client.rb +0 -376
- data/lib/trophy_api_client/leaderboards/client.rb +0 -225
- data/lib/trophy_api_client/leaderboards/types/leaderboards_all_response_item.rb +0 -202
- data/lib/trophy_api_client/metrics/client.rb +0 -142
- data/lib/trophy_api_client/points/client.rb +0 -424
- data/lib/trophy_api_client/streaks/client.rb +0 -104
- data/lib/trophy_api_client/types/achievement_completion_response.rb +0 -83
- data/lib/trophy_api_client/types/achievement_response.rb +0 -198
- data/lib/trophy_api_client/types/achievement_response_event_attribute.rb +0 -67
- data/lib/trophy_api_client/types/achievement_response_event_attributes_item.rb +0 -66
- data/lib/trophy_api_client/types/achievement_response_trigger.rb +0 -11
- data/lib/trophy_api_client/types/achievement_response_user_attributes_item.rb +0 -66
- data/lib/trophy_api_client/types/achievement_with_stats_response.rb +0 -214
- data/lib/trophy_api_client/types/admin_attribute.rb +0 -81
- data/lib/trophy_api_client/types/admin_attribute_type.rb +0 -9
- data/lib/trophy_api_client/types/admin_issue.rb +0 -98
- data/lib/trophy_api_client/types/admin_issue_severity.rb +0 -9
- data/lib/trophy_api_client/types/admin_leaderboard.rb +0 -171
- data/lib/trophy_api_client/types/admin_leaderboard_rank_by.rb +0 -10
- data/lib/trophy_api_client/types/admin_leaderboard_run_unit.rb +0 -10
- data/lib/trophy_api_client/types/admin_leaderboard_status.rb +0 -11
- data/lib/trophy_api_client/types/admin_points_boost.rb +0 -138
- data/lib/trophy_api_client/types/admin_points_boost_rounding.rb +0 -10
- data/lib/trophy_api_client/types/admin_points_boost_status.rb +0 -10
- data/lib/trophy_api_client/types/admin_points_boost_user_attributes_item.rb +0 -65
- data/lib/trophy_api_client/types/admin_points_level.rb +0 -109
- data/lib/trophy_api_client/types/admin_points_level_badge.rb +0 -55
- data/lib/trophy_api_client/types/admin_points_system.rb +0 -118
- data/lib/trophy_api_client/types/admin_points_system_badge.rb +0 -55
- data/lib/trophy_api_client/types/admin_points_system_status.rb +0 -9
- data/lib/trophy_api_client/types/admin_points_trigger.rb +0 -175
- data/lib/trophy_api_client/types/admin_points_trigger_event_attributes_item.rb +0 -66
- data/lib/trophy_api_client/types/admin_points_trigger_status.rb +0 -9
- data/lib/trophy_api_client/types/admin_points_trigger_time_unit.rb +0 -9
- data/lib/trophy_api_client/types/admin_points_trigger_type.rb +0 -12
- data/lib/trophy_api_client/types/admin_points_trigger_user_attributes_item.rb +0 -65
- data/lib/trophy_api_client/types/admin_tenant.rb +0 -103
- data/lib/trophy_api_client/types/admin_tenant_status.rb +0 -9
- data/lib/trophy_api_client/types/base_streak_response.rb +0 -144
- data/lib/trophy_api_client/types/bulk_streak_response.rb +0 -7
- data/lib/trophy_api_client/types/bulk_streak_response_item.rb +0 -76
- data/lib/trophy_api_client/types/create_attribute_request_item.rb +0 -76
- data/lib/trophy_api_client/types/create_attribute_request_item_type.rb +0 -9
- data/lib/trophy_api_client/types/create_attributes_request.rb +0 -7
- data/lib/trophy_api_client/types/create_attributes_response.rb +0 -74
- data/lib/trophy_api_client/types/create_leaderboard_request_item.rb +0 -171
- data/lib/trophy_api_client/types/create_leaderboard_request_item_rank_by.rb +0 -10
- data/lib/trophy_api_client/types/create_leaderboard_request_item_run_unit.rb +0 -11
- data/lib/trophy_api_client/types/create_leaderboard_request_item_status.rb +0 -13
- data/lib/trophy_api_client/types/create_leaderboards_request.rb +0 -7
- data/lib/trophy_api_client/types/create_leaderboards_response.rb +0 -74
- data/lib/trophy_api_client/types/create_metric_request_item.rb +0 -87
- data/lib/trophy_api_client/types/create_metric_request_item_unit_type.rb +0 -9
- data/lib/trophy_api_client/types/create_metrics_request.rb +0 -7
- data/lib/trophy_api_client/types/create_metrics_response.rb +0 -74
- data/lib/trophy_api_client/types/create_points_boost_request_item.rb +0 -125
- data/lib/trophy_api_client/types/create_points_boost_request_item_rounding.rb +0 -10
- data/lib/trophy_api_client/types/create_points_boost_request_item_user_attributes_item.rb +0 -67
- data/lib/trophy_api_client/types/create_points_boosts_request.rb +0 -7
- data/lib/trophy_api_client/types/create_points_boosts_response.rb +0 -75
- data/lib/trophy_api_client/types/create_points_level_request_item.rb +0 -103
- data/lib/trophy_api_client/types/create_points_level_request_item_badge.rb +0 -56
- data/lib/trophy_api_client/types/create_points_levels_request.rb +0 -7
- data/lib/trophy_api_client/types/create_points_levels_response.rb +0 -74
- data/lib/trophy_api_client/types/create_points_system_request_item.rb +0 -140
- data/lib/trophy_api_client/types/create_points_system_request_item_badge.rb +0 -55
- data/lib/trophy_api_client/types/create_points_systems_request.rb +0 -7
- data/lib/trophy_api_client/types/create_points_systems_response.rb +0 -74
- data/lib/trophy_api_client/types/create_points_trigger_request_item.rb +0 -167
- data/lib/trophy_api_client/types/create_points_trigger_request_item_event_attributes_item.rb +0 -67
- data/lib/trophy_api_client/types/create_points_trigger_request_item_status.rb +0 -9
- data/lib/trophy_api_client/types/create_points_trigger_request_item_time_unit.rb +0 -9
- data/lib/trophy_api_client/types/create_points_trigger_request_item_type.rb +0 -12
- data/lib/trophy_api_client/types/create_points_trigger_request_item_user_attributes_item.rb +0 -67
- data/lib/trophy_api_client/types/create_points_triggers_request.rb +0 -7
- data/lib/trophy_api_client/types/create_points_triggers_response.rb +0 -74
- data/lib/trophy_api_client/types/create_streak_freezes_response.rb +0 -60
- data/lib/trophy_api_client/types/create_tenant_request_item.rb +0 -66
- data/lib/trophy_api_client/types/create_tenants_request.rb +0 -7
- data/lib/trophy_api_client/types/create_tenants_response.rb +0 -74
- data/lib/trophy_api_client/types/created_admin_points_system.rb +0 -163
- data/lib/trophy_api_client/types/created_metric.rb +0 -88
- data/lib/trophy_api_client/types/created_metric_unit_type.rb +0 -9
- data/lib/trophy_api_client/types/delete_attributes_response.rb +0 -75
- data/lib/trophy_api_client/types/delete_leaderboards_response.rb +0 -75
- data/lib/trophy_api_client/types/delete_metrics_response.rb +0 -75
- data/lib/trophy_api_client/types/delete_points_boosts_response.rb +0 -74
- data/lib/trophy_api_client/types/delete_points_levels_response.rb +0 -74
- data/lib/trophy_api_client/types/delete_points_systems_response.rb +0 -74
- data/lib/trophy_api_client/types/delete_points_triggers_response.rb +0 -75
- data/lib/trophy_api_client/types/delete_tenants_response.rb +0 -74
- data/lib/trophy_api_client/types/deleted_resource.rb +0 -56
- data/lib/trophy_api_client/types/error_body.rb +0 -55
- data/lib/trophy_api_client/types/event_response.rb +0 -147
- data/lib/trophy_api_client/types/get_user_points_response.rb +0 -139
- data/lib/trophy_api_client/types/leaderboard_event.rb +0 -110
- data/lib/trophy_api_client/types/leaderboard_ranking.rb +0 -82
- data/lib/trophy_api_client/types/leaderboard_response.rb +0 -192
- data/lib/trophy_api_client/types/leaderboard_response_rank_by.rb +0 -10
- data/lib/trophy_api_client/types/leaderboard_response_run_unit.rb +0 -11
- data/lib/trophy_api_client/types/leaderboard_response_with_rankings.rb +0 -212
- data/lib/trophy_api_client/types/leaderboard_response_with_rankings_status.rb +0 -10
- data/lib/trophy_api_client/types/list_attributes_response.rb +0 -7
- data/lib/trophy_api_client/types/list_leaderboards_response.rb +0 -7
- data/lib/trophy_api_client/types/list_metrics_response.rb +0 -7
- data/lib/trophy_api_client/types/list_points_boosts_response.rb +0 -7
- data/lib/trophy_api_client/types/list_points_levels_response.rb +0 -7
- data/lib/trophy_api_client/types/list_points_systems_response.rb +0 -7
- data/lib/trophy_api_client/types/list_points_triggers_response.rb +0 -7
- data/lib/trophy_api_client/types/list_tenants_response.rb +0 -7
- data/lib/trophy_api_client/types/metric_event_leaderboard_response.rb +0 -245
- data/lib/trophy_api_client/types/metric_event_leaderboard_response_breakdown_attribute_values_item.rb +0 -67
- data/lib/trophy_api_client/types/metric_event_points_response.rb +0 -148
- data/lib/trophy_api_client/types/metric_event_streak_response.rb +0 -153
- data/lib/trophy_api_client/types/metric_response.rb +0 -90
- data/lib/trophy_api_client/types/notification_channel.rb +0 -9
- data/lib/trophy_api_client/types/notification_preferences.rb +0 -89
- data/lib/trophy_api_client/types/patch_points_boosts_request.rb +0 -7
- data/lib/trophy_api_client/types/patch_points_boosts_request_item.rb +0 -118
- data/lib/trophy_api_client/types/patch_points_boosts_request_item_rounding.rb +0 -10
- data/lib/trophy_api_client/types/patch_points_boosts_request_item_user_attributes_item.rb +0 -67
- data/lib/trophy_api_client/types/patch_points_boosts_response.rb +0 -74
- data/lib/trophy_api_client/types/patch_points_levels_request.rb +0 -7
- data/lib/trophy_api_client/types/patch_points_levels_request_item.rb +0 -100
- data/lib/trophy_api_client/types/patch_points_levels_request_item_badge.rb +0 -55
- data/lib/trophy_api_client/types/patch_points_levels_response.rb +0 -74
- data/lib/trophy_api_client/types/patch_points_triggers_request.rb +0 -7
- data/lib/trophy_api_client/types/patch_points_triggers_request_item.rb +0 -174
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_event_attributes_item.rb +0 -67
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_status.rb +0 -9
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_time_unit.rb +0 -9
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_type.rb +0 -13
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_user_attributes_item.rb +0 -67
- data/lib/trophy_api_client/types/patch_points_triggers_response.rb +0 -74
- data/lib/trophy_api_client/types/points_award.rb +0 -113
- data/lib/trophy_api_client/types/points_boost.rb +0 -112
- data/lib/trophy_api_client/types/points_boost_rounding.rb +0 -10
- data/lib/trophy_api_client/types/points_boost_status.rb +0 -10
- data/lib/trophy_api_client/types/points_boost_webhook_payload.rb +0 -149
- data/lib/trophy_api_client/types/points_boost_webhook_payload_rounding.rb +0 -10
- data/lib/trophy_api_client/types/points_boost_webhook_payload_status.rb +0 -9
- data/lib/trophy_api_client/types/points_level.rb +0 -103
- data/lib/trophy_api_client/types/points_level_summary_response.rb +0 -7
- data/lib/trophy_api_client/types/points_level_summary_response_item.rb +0 -71
- data/lib/trophy_api_client/types/points_range.rb +0 -72
- data/lib/trophy_api_client/types/points_response.rb +0 -103
- data/lib/trophy_api_client/types/points_summary_response.rb +0 -7
- data/lib/trophy_api_client/types/points_system_response.rb +0 -107
- data/lib/trophy_api_client/types/points_trigger.rb +0 -227
- data/lib/trophy_api_client/types/points_trigger_event_attribute.rb +0 -67
- data/lib/trophy_api_client/types/points_trigger_event_attributes_item.rb +0 -65
- data/lib/trophy_api_client/types/points_trigger_status.rb +0 -10
- data/lib/trophy_api_client/types/points_trigger_time_unit.rb +0 -9
- data/lib/trophy_api_client/types/points_trigger_type.rb +0 -12
- data/lib/trophy_api_client/types/points_trigger_user_attributes_item.rb +0 -65
- data/lib/trophy_api_client/types/restore_streaks_response.rb +0 -70
- data/lib/trophy_api_client/types/streak_evaluation_mode_preference.rb +0 -11
- data/lib/trophy_api_client/types/streak_frequency.rb +0 -9
- data/lib/trophy_api_client/types/streak_metric_preference.rb +0 -66
- data/lib/trophy_api_client/types/streak_preferences.rb +0 -83
- data/lib/trophy_api_client/types/streak_response.rb +0 -170
- data/lib/trophy_api_client/types/streak_response_streak_history_item.rb +0 -89
- data/lib/trophy_api_client/types/update_attribute_request_item.rb +0 -69
- data/lib/trophy_api_client/types/update_attributes_request.rb +0 -7
- data/lib/trophy_api_client/types/update_attributes_response.rb +0 -75
- data/lib/trophy_api_client/types/update_leaderboard_request_item.rb +0 -179
- data/lib/trophy_api_client/types/update_leaderboard_request_item_rank_by.rb +0 -11
- data/lib/trophy_api_client/types/update_leaderboard_request_item_run_unit.rb +0 -9
- data/lib/trophy_api_client/types/update_leaderboard_request_item_status.rb +0 -12
- data/lib/trophy_api_client/types/update_leaderboards_request.rb +0 -7
- data/lib/trophy_api_client/types/update_leaderboards_response.rb +0 -75
- data/lib/trophy_api_client/types/update_metric_request_item.rb +0 -86
- data/lib/trophy_api_client/types/update_metric_request_item_unit_type.rb +0 -9
- data/lib/trophy_api_client/types/update_metrics_request.rb +0 -7
- data/lib/trophy_api_client/types/update_metrics_response.rb +0 -75
- data/lib/trophy_api_client/types/update_points_system_request_item.rb +0 -102
- data/lib/trophy_api_client/types/update_points_system_request_item_badge.rb +0 -55
- data/lib/trophy_api_client/types/update_points_systems_request.rb +0 -7
- data/lib/trophy_api_client/types/update_points_systems_response.rb +0 -74
- data/lib/trophy_api_client/types/update_tenant_request_item.rb +0 -75
- data/lib/trophy_api_client/types/update_tenants_request.rb +0 -7
- data/lib/trophy_api_client/types/update_tenants_response.rb +0 -74
- data/lib/trophy_api_client/types/updated_user.rb +0 -108
- data/lib/trophy_api_client/types/upserted_user.rb +0 -116
- data/lib/trophy_api_client/types/user.rb +0 -141
- data/lib/trophy_api_client/types/user_achievement_response.rb +0 -209
- data/lib/trophy_api_client/types/user_achievement_with_stats_response.rb +0 -225
- data/lib/trophy_api_client/types/user_leaderboard_response.rb +0 -212
- data/lib/trophy_api_client/types/user_leaderboard_response_with_history.rb +0 -224
- data/lib/trophy_api_client/types/user_preferences_response.rb +0 -80
- data/lib/trophy_api_client/types/webhook_user_leaderboard_response.rb +0 -228
- data/lib/trophy_api_client/types/webhooks_achievement_completed_payload.rb +0 -84
- data/lib/trophy_api_client/types/webhooks_leaderboard_changed_payload.rb +0 -71
- data/lib/trophy_api_client/types/webhooks_leaderboard_finished_payload.rb +0 -71
- data/lib/trophy_api_client/types/webhooks_leaderboard_rank_changed_payload.rb +0 -85
- data/lib/trophy_api_client/types/webhooks_leaderboard_started_payload.rb +0 -71
- data/lib/trophy_api_client/types/webhooks_points_boost_finished_payload.rb +0 -79
- data/lib/trophy_api_client/types/webhooks_points_boost_started_payload.rb +0 -79
- data/lib/trophy_api_client/types/webhooks_points_changed_payload.rb +0 -84
- data/lib/trophy_api_client/types/webhooks_points_level_changed_payload.rb +0 -117
- data/lib/trophy_api_client/types/webhooks_points_level_changed_payload_points.rb +0 -114
- data/lib/trophy_api_client/types/webhooks_streak_extended_payload.rb +0 -84
- data/lib/trophy_api_client/types/webhooks_streak_freeze_consumed_payload.rb +0 -85
- data/lib/trophy_api_client/types/webhooks_streak_freeze_earned_payload.rb +0 -85
- data/lib/trophy_api_client/types/webhooks_streak_lost_payload.rb +0 -78
- data/lib/trophy_api_client/types/webhooks_streak_started_payload.rb +0 -84
- data/lib/trophy_api_client/types/wrapped_activity.rb +0 -134
- data/lib/trophy_api_client/types/wrapped_activity_period.rb +0 -95
- data/lib/trophy_api_client/types/wrapped_entire_year.rb +0 -114
- data/lib/trophy_api_client/types/wrapped_metric.rb +0 -119
- data/lib/trophy_api_client/types/wrapped_metric_by_attribute_value_value.rb +0 -103
- data/lib/trophy_api_client/types/wrapped_most_active_day.rb +0 -108
- data/lib/trophy_api_client/types/wrapped_most_active_month.rb +0 -108
- data/lib/trophy_api_client/types/wrapped_most_active_week.rb +0 -116
- data/lib/trophy_api_client/types/wrapped_points.rb +0 -106
- data/lib/trophy_api_client/types/wrapped_response.rb +0 -79
- data/lib/trophy_api_client/types/wrapped_streak.rb +0 -96
- data/lib/trophy_api_client/users/client.rb +0 -1356
- data/lib/trophy_api_client/users/types/users_metric_event_summary_response_item.rb +0 -76
- data/lib/trophy_api_client/users/types/users_points_event_summary_response_item.rb +0 -76
- data/lib/trophy_api_client/version.rb +0 -3
- data/lib/types_export.rb +0 -221
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "../../requests"
|
|
4
|
-
require_relative "types/leaderboards_all_response_item"
|
|
5
|
-
require "json"
|
|
6
|
-
require_relative "../types/leaderboard_response_with_rankings"
|
|
7
|
-
require "async"
|
|
8
|
-
|
|
9
|
-
module TrophyApiClient
|
|
10
|
-
class LeaderboardsClient
|
|
11
|
-
# @return [TrophyApiClient::RequestClient]
|
|
12
|
-
attr_reader :request_client
|
|
13
|
-
|
|
14
|
-
# @param request_client [TrophyApiClient::RequestClient]
|
|
15
|
-
# @return [TrophyApiClient::LeaderboardsClient]
|
|
16
|
-
def initialize(request_client:)
|
|
17
|
-
@request_client = request_client
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
# Get all leaderboards for your organization. Finished leaderboards are excluded
|
|
21
|
-
# by default.
|
|
22
|
-
#
|
|
23
|
-
# @param include_finished [Boolean] When set to 'true', leaderboards with status 'finished' will be included in the
|
|
24
|
-
# response. By default, finished leaderboards are excluded.
|
|
25
|
-
# @param request_options [TrophyApiClient::RequestOptions]
|
|
26
|
-
# @return [Array<TrophyApiClient::Leaderboards::LeaderboardsAllResponseItem>]
|
|
27
|
-
# @example
|
|
28
|
-
# api = TrophyApiClient::Client.new(
|
|
29
|
-
# base_url: "https://api.example.com",
|
|
30
|
-
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
31
|
-
# api_key: "YOUR_API_KEY"
|
|
32
|
-
# )
|
|
33
|
-
# api.leaderboards.all(include_finished: true)
|
|
34
|
-
def all(include_finished: nil, request_options: nil)
|
|
35
|
-
response = @request_client.conn.get do |req|
|
|
36
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
37
|
-
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
38
|
-
req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
|
|
39
|
-
req.headers = {
|
|
40
|
-
**(req.headers || {}),
|
|
41
|
-
**@request_client.get_headers,
|
|
42
|
-
**(request_options&.additional_headers || {})
|
|
43
|
-
}.compact
|
|
44
|
-
req.params = {
|
|
45
|
-
**(request_options&.additional_query_parameters || {}),
|
|
46
|
-
"includeFinished": include_finished
|
|
47
|
-
}.compact
|
|
48
|
-
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
49
|
-
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
50
|
-
end
|
|
51
|
-
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/leaderboards"
|
|
52
|
-
end
|
|
53
|
-
parsed_json = JSON.parse(response.body)
|
|
54
|
-
parsed_json&.map do |item|
|
|
55
|
-
item = item.to_json
|
|
56
|
-
TrophyApiClient::Leaderboards::LeaderboardsAllResponseItem.from_json(json_object: item)
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# Get a specific leaderboard by its key.
|
|
61
|
-
#
|
|
62
|
-
# @param key [String] Unique key of the leaderboard as set when created.
|
|
63
|
-
# @param offset [Integer] Number of rankings to skip for pagination.
|
|
64
|
-
# @param limit [Integer] Maximum number of rankings to return. Cannot be greater than the size of the
|
|
65
|
-
# leaderboard.
|
|
66
|
-
# @param run [String] Specific run date in YYYY-MM-DD format. If not provided, returns the current
|
|
67
|
-
# run.
|
|
68
|
-
# @param user_id [String] When provided, offset is relative to this user's position on the leaderboard. If
|
|
69
|
-
# the user is not found in the leaderboard, returns empty rankings array.
|
|
70
|
-
# @param user_attributes [String] Attribute key and value to filter the rankings by, separated by a colon. For
|
|
71
|
-
# example, `city:London`. This parameter is required, and only valid for
|
|
72
|
-
# leaderboards with a breakdown attribute.
|
|
73
|
-
# @param request_options [TrophyApiClient::RequestOptions]
|
|
74
|
-
# @return [TrophyApiClient::LeaderboardResponseWithRankings]
|
|
75
|
-
# @example
|
|
76
|
-
# api = TrophyApiClient::Client.new(
|
|
77
|
-
# base_url: "https://api.example.com",
|
|
78
|
-
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
79
|
-
# api_key: "YOUR_API_KEY"
|
|
80
|
-
# )
|
|
81
|
-
# api.leaderboards.get(
|
|
82
|
-
# key: "weekly-words",
|
|
83
|
-
# offset: 1,
|
|
84
|
-
# limit: 1,
|
|
85
|
-
# run: "2025-01-15",
|
|
86
|
-
# user_id: "user-123",
|
|
87
|
-
# user_attributes: "city:London"
|
|
88
|
-
# )
|
|
89
|
-
def get(key:, offset: nil, limit: nil, run: nil, user_id: nil, user_attributes: nil, request_options: nil)
|
|
90
|
-
response = @request_client.conn.get do |req|
|
|
91
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
92
|
-
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
93
|
-
req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
|
|
94
|
-
req.headers = {
|
|
95
|
-
**(req.headers || {}),
|
|
96
|
-
**@request_client.get_headers,
|
|
97
|
-
**(request_options&.additional_headers || {})
|
|
98
|
-
}.compact
|
|
99
|
-
req.params = {
|
|
100
|
-
**(request_options&.additional_query_parameters || {}),
|
|
101
|
-
"offset": offset,
|
|
102
|
-
"limit": limit,
|
|
103
|
-
"run": run,
|
|
104
|
-
"userId": user_id,
|
|
105
|
-
"userAttributes": user_attributes
|
|
106
|
-
}.compact
|
|
107
|
-
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
108
|
-
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
109
|
-
end
|
|
110
|
-
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/leaderboards/#{key}"
|
|
111
|
-
end
|
|
112
|
-
TrophyApiClient::LeaderboardResponseWithRankings.from_json(json_object: response.body)
|
|
113
|
-
end
|
|
114
|
-
end
|
|
115
|
-
|
|
116
|
-
class AsyncLeaderboardsClient
|
|
117
|
-
# @return [TrophyApiClient::AsyncRequestClient]
|
|
118
|
-
attr_reader :request_client
|
|
119
|
-
|
|
120
|
-
# @param request_client [TrophyApiClient::AsyncRequestClient]
|
|
121
|
-
# @return [TrophyApiClient::AsyncLeaderboardsClient]
|
|
122
|
-
def initialize(request_client:)
|
|
123
|
-
@request_client = request_client
|
|
124
|
-
end
|
|
125
|
-
|
|
126
|
-
# Get all leaderboards for your organization. Finished leaderboards are excluded
|
|
127
|
-
# by default.
|
|
128
|
-
#
|
|
129
|
-
# @param include_finished [Boolean] When set to 'true', leaderboards with status 'finished' will be included in the
|
|
130
|
-
# response. By default, finished leaderboards are excluded.
|
|
131
|
-
# @param request_options [TrophyApiClient::RequestOptions]
|
|
132
|
-
# @return [Array<TrophyApiClient::Leaderboards::LeaderboardsAllResponseItem>]
|
|
133
|
-
# @example
|
|
134
|
-
# api = TrophyApiClient::Client.new(
|
|
135
|
-
# base_url: "https://api.example.com",
|
|
136
|
-
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
137
|
-
# api_key: "YOUR_API_KEY"
|
|
138
|
-
# )
|
|
139
|
-
# api.leaderboards.all(include_finished: true)
|
|
140
|
-
def all(include_finished: nil, request_options: nil)
|
|
141
|
-
Async do
|
|
142
|
-
response = @request_client.conn.get do |req|
|
|
143
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
144
|
-
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
145
|
-
req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
|
|
146
|
-
req.headers = {
|
|
147
|
-
**(req.headers || {}),
|
|
148
|
-
**@request_client.get_headers,
|
|
149
|
-
**(request_options&.additional_headers || {})
|
|
150
|
-
}.compact
|
|
151
|
-
req.params = {
|
|
152
|
-
**(request_options&.additional_query_parameters || {}),
|
|
153
|
-
"includeFinished": include_finished
|
|
154
|
-
}.compact
|
|
155
|
-
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
156
|
-
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
157
|
-
end
|
|
158
|
-
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/leaderboards"
|
|
159
|
-
end
|
|
160
|
-
parsed_json = JSON.parse(response.body)
|
|
161
|
-
parsed_json&.map do |item|
|
|
162
|
-
item = item.to_json
|
|
163
|
-
TrophyApiClient::Leaderboards::LeaderboardsAllResponseItem.from_json(json_object: item)
|
|
164
|
-
end
|
|
165
|
-
end
|
|
166
|
-
end
|
|
167
|
-
|
|
168
|
-
# Get a specific leaderboard by its key.
|
|
169
|
-
#
|
|
170
|
-
# @param key [String] Unique key of the leaderboard as set when created.
|
|
171
|
-
# @param offset [Integer] Number of rankings to skip for pagination.
|
|
172
|
-
# @param limit [Integer] Maximum number of rankings to return. Cannot be greater than the size of the
|
|
173
|
-
# leaderboard.
|
|
174
|
-
# @param run [String] Specific run date in YYYY-MM-DD format. If not provided, returns the current
|
|
175
|
-
# run.
|
|
176
|
-
# @param user_id [String] When provided, offset is relative to this user's position on the leaderboard. If
|
|
177
|
-
# the user is not found in the leaderboard, returns empty rankings array.
|
|
178
|
-
# @param user_attributes [String] Attribute key and value to filter the rankings by, separated by a colon. For
|
|
179
|
-
# example, `city:London`. This parameter is required, and only valid for
|
|
180
|
-
# leaderboards with a breakdown attribute.
|
|
181
|
-
# @param request_options [TrophyApiClient::RequestOptions]
|
|
182
|
-
# @return [TrophyApiClient::LeaderboardResponseWithRankings]
|
|
183
|
-
# @example
|
|
184
|
-
# api = TrophyApiClient::Client.new(
|
|
185
|
-
# base_url: "https://api.example.com",
|
|
186
|
-
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
187
|
-
# api_key: "YOUR_API_KEY"
|
|
188
|
-
# )
|
|
189
|
-
# api.leaderboards.get(
|
|
190
|
-
# key: "weekly-words",
|
|
191
|
-
# offset: 1,
|
|
192
|
-
# limit: 1,
|
|
193
|
-
# run: "2025-01-15",
|
|
194
|
-
# user_id: "user-123",
|
|
195
|
-
# user_attributes: "city:London"
|
|
196
|
-
# )
|
|
197
|
-
def get(key:, offset: nil, limit: nil, run: nil, user_id: nil, user_attributes: nil, request_options: nil)
|
|
198
|
-
Async do
|
|
199
|
-
response = @request_client.conn.get do |req|
|
|
200
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
201
|
-
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
202
|
-
req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
|
|
203
|
-
req.headers = {
|
|
204
|
-
**(req.headers || {}),
|
|
205
|
-
**@request_client.get_headers,
|
|
206
|
-
**(request_options&.additional_headers || {})
|
|
207
|
-
}.compact
|
|
208
|
-
req.params = {
|
|
209
|
-
**(request_options&.additional_query_parameters || {}),
|
|
210
|
-
"offset": offset,
|
|
211
|
-
"limit": limit,
|
|
212
|
-
"run": run,
|
|
213
|
-
"userId": user_id,
|
|
214
|
-
"userAttributes": user_attributes
|
|
215
|
-
}.compact
|
|
216
|
-
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
217
|
-
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
218
|
-
end
|
|
219
|
-
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/leaderboards/#{key}"
|
|
220
|
-
end
|
|
221
|
-
TrophyApiClient::LeaderboardResponseWithRankings.from_json(json_object: response.body)
|
|
222
|
-
end
|
|
223
|
-
end
|
|
224
|
-
end
|
|
225
|
-
end
|
|
@@ -1,202 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "leaderboards_all_response_item_status"
|
|
4
|
-
require_relative "../../types/leaderboard_response_rank_by"
|
|
5
|
-
require_relative "../../types/leaderboard_response_run_unit"
|
|
6
|
-
require "ostruct"
|
|
7
|
-
require "json"
|
|
8
|
-
|
|
9
|
-
module TrophyApiClient
|
|
10
|
-
class Leaderboards
|
|
11
|
-
class LeaderboardsAllResponseItem
|
|
12
|
-
# @return [TrophyApiClient::Leaderboards::LeaderboardsAllResponseItemStatus] The status of the leaderboard.
|
|
13
|
-
attr_reader :status
|
|
14
|
-
# @return [String] The unique ID of the leaderboard.
|
|
15
|
-
attr_reader :id
|
|
16
|
-
# @return [String] The user-facing name of the leaderboard.
|
|
17
|
-
attr_reader :name
|
|
18
|
-
# @return [String] The unique key used to reference the leaderboard in APIs.
|
|
19
|
-
attr_reader :key
|
|
20
|
-
# @return [TrophyApiClient::LeaderboardResponseRankBy] What the leaderboard ranks by.
|
|
21
|
-
attr_reader :rank_by
|
|
22
|
-
# @return [String] Deprecated. The key of the attribute to break down this leaderboard by.
|
|
23
|
-
attr_reader :breakdown_attribute
|
|
24
|
-
# @return [Array<String>] The user attribute keys that this leaderboard is broken down by.
|
|
25
|
-
attr_reader :breakdown_attributes
|
|
26
|
-
# @return [String] The key of the metric to rank by, if rankBy is 'metric'.
|
|
27
|
-
attr_reader :metric_key
|
|
28
|
-
# @return [String] The name of the metric to rank by, if rankBy is 'metric'.
|
|
29
|
-
attr_reader :metric_name
|
|
30
|
-
# @return [String] The key of the points system to rank by, if rankBy is 'points'.
|
|
31
|
-
attr_reader :points_system_key
|
|
32
|
-
# @return [String] The name of the points system to rank by, if rankBy is 'points'.
|
|
33
|
-
attr_reader :points_system_name
|
|
34
|
-
# @return [String] The user-facing description of the leaderboard.
|
|
35
|
-
attr_reader :description
|
|
36
|
-
# @return [String] The start date of the leaderboard in YYYY-MM-DD format.
|
|
37
|
-
attr_reader :start
|
|
38
|
-
# @return [String] The end date of the leaderboard in YYYY-MM-DD format, or null if it runs
|
|
39
|
-
# forever.
|
|
40
|
-
attr_reader :end_
|
|
41
|
-
# @return [Integer] The maximum number of participants in the leaderboard.
|
|
42
|
-
attr_reader :max_participants
|
|
43
|
-
# @return [TrophyApiClient::LeaderboardResponseRunUnit] The repetition type for recurring leaderboards, or null for one-time
|
|
44
|
-
# leaderboards.
|
|
45
|
-
attr_reader :run_unit
|
|
46
|
-
# @return [Integer] The interval between repetitions, relative to the start date and repetition
|
|
47
|
-
# type. Null for one-time leaderboards.
|
|
48
|
-
attr_reader :run_interval
|
|
49
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
50
|
-
attr_reader :additional_properties
|
|
51
|
-
# @return [Object]
|
|
52
|
-
attr_reader :_field_set
|
|
53
|
-
protected :_field_set
|
|
54
|
-
|
|
55
|
-
OMIT = Object.new
|
|
56
|
-
|
|
57
|
-
# @param status [TrophyApiClient::Leaderboards::LeaderboardsAllResponseItemStatus] The status of the leaderboard.
|
|
58
|
-
# @param id [String] The unique ID of the leaderboard.
|
|
59
|
-
# @param name [String] The user-facing name of the leaderboard.
|
|
60
|
-
# @param key [String] The unique key used to reference the leaderboard in APIs.
|
|
61
|
-
# @param rank_by [TrophyApiClient::LeaderboardResponseRankBy] What the leaderboard ranks by.
|
|
62
|
-
# @param breakdown_attribute [String] Deprecated. The key of the attribute to break down this leaderboard by.
|
|
63
|
-
# @param breakdown_attributes [Array<String>] The user attribute keys that this leaderboard is broken down by.
|
|
64
|
-
# @param metric_key [String] The key of the metric to rank by, if rankBy is 'metric'.
|
|
65
|
-
# @param metric_name [String] The name of the metric to rank by, if rankBy is 'metric'.
|
|
66
|
-
# @param points_system_key [String] The key of the points system to rank by, if rankBy is 'points'.
|
|
67
|
-
# @param points_system_name [String] The name of the points system to rank by, if rankBy is 'points'.
|
|
68
|
-
# @param description [String] The user-facing description of the leaderboard.
|
|
69
|
-
# @param start [String] The start date of the leaderboard in YYYY-MM-DD format.
|
|
70
|
-
# @param end_ [String] The end date of the leaderboard in YYYY-MM-DD format, or null if it runs
|
|
71
|
-
# forever.
|
|
72
|
-
# @param max_participants [Integer] The maximum number of participants in the leaderboard.
|
|
73
|
-
# @param run_unit [TrophyApiClient::LeaderboardResponseRunUnit] The repetition type for recurring leaderboards, or null for one-time
|
|
74
|
-
# leaderboards.
|
|
75
|
-
# @param run_interval [Integer] The interval between repetitions, relative to the start date and repetition
|
|
76
|
-
# type. Null for one-time leaderboards.
|
|
77
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
78
|
-
# @return [TrophyApiClient::Leaderboards::LeaderboardsAllResponseItem]
|
|
79
|
-
def initialize(status:, id:, name:, key:, rank_by:, breakdown_attributes:, start:, breakdown_attribute: OMIT,
|
|
80
|
-
metric_key: OMIT, metric_name: OMIT, points_system_key: OMIT, points_system_name: OMIT, description: OMIT, end_: OMIT, max_participants: OMIT, run_unit: OMIT, run_interval: OMIT, additional_properties: nil)
|
|
81
|
-
@status = status
|
|
82
|
-
@id = id
|
|
83
|
-
@name = name
|
|
84
|
-
@key = key
|
|
85
|
-
@rank_by = rank_by
|
|
86
|
-
@breakdown_attribute = breakdown_attribute if breakdown_attribute != OMIT
|
|
87
|
-
@breakdown_attributes = breakdown_attributes
|
|
88
|
-
@metric_key = metric_key if metric_key != OMIT
|
|
89
|
-
@metric_name = metric_name if metric_name != OMIT
|
|
90
|
-
@points_system_key = points_system_key if points_system_key != OMIT
|
|
91
|
-
@points_system_name = points_system_name if points_system_name != OMIT
|
|
92
|
-
@description = description if description != OMIT
|
|
93
|
-
@start = start
|
|
94
|
-
@end_ = end_ if end_ != OMIT
|
|
95
|
-
@max_participants = max_participants if max_participants != OMIT
|
|
96
|
-
@run_unit = run_unit if run_unit != OMIT
|
|
97
|
-
@run_interval = run_interval if run_interval != OMIT
|
|
98
|
-
@additional_properties = additional_properties
|
|
99
|
-
@_field_set = {
|
|
100
|
-
"status": status,
|
|
101
|
-
"id": id,
|
|
102
|
-
"name": name,
|
|
103
|
-
"key": key,
|
|
104
|
-
"rankBy": rank_by,
|
|
105
|
-
"breakdownAttribute": breakdown_attribute,
|
|
106
|
-
"breakdownAttributes": breakdown_attributes,
|
|
107
|
-
"metricKey": metric_key,
|
|
108
|
-
"metricName": metric_name,
|
|
109
|
-
"pointsSystemKey": points_system_key,
|
|
110
|
-
"pointsSystemName": points_system_name,
|
|
111
|
-
"description": description,
|
|
112
|
-
"start": start,
|
|
113
|
-
"end": end_,
|
|
114
|
-
"maxParticipants": max_participants,
|
|
115
|
-
"runUnit": run_unit,
|
|
116
|
-
"runInterval": run_interval
|
|
117
|
-
}.reject do |_k, v|
|
|
118
|
-
v == OMIT
|
|
119
|
-
end
|
|
120
|
-
end
|
|
121
|
-
|
|
122
|
-
# Deserialize a JSON object to an instance of LeaderboardsAllResponseItem
|
|
123
|
-
#
|
|
124
|
-
# @param json_object [String]
|
|
125
|
-
# @return [TrophyApiClient::Leaderboards::LeaderboardsAllResponseItem]
|
|
126
|
-
def self.from_json(json_object:)
|
|
127
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
128
|
-
parsed_json = JSON.parse(json_object)
|
|
129
|
-
status = parsed_json["status"]
|
|
130
|
-
id = parsed_json["id"]
|
|
131
|
-
name = parsed_json["name"]
|
|
132
|
-
key = parsed_json["key"]
|
|
133
|
-
rank_by = parsed_json["rankBy"]
|
|
134
|
-
breakdown_attribute = parsed_json["breakdownAttribute"]
|
|
135
|
-
breakdown_attributes = parsed_json["breakdownAttributes"]
|
|
136
|
-
metric_key = parsed_json["metricKey"]
|
|
137
|
-
metric_name = parsed_json["metricName"]
|
|
138
|
-
points_system_key = parsed_json["pointsSystemKey"]
|
|
139
|
-
points_system_name = parsed_json["pointsSystemName"]
|
|
140
|
-
description = parsed_json["description"]
|
|
141
|
-
start = parsed_json["start"]
|
|
142
|
-
end_ = parsed_json["end"]
|
|
143
|
-
max_participants = parsed_json["maxParticipants"]
|
|
144
|
-
run_unit = parsed_json["runUnit"]
|
|
145
|
-
run_interval = parsed_json["runInterval"]
|
|
146
|
-
new(
|
|
147
|
-
status: status,
|
|
148
|
-
id: id,
|
|
149
|
-
name: name,
|
|
150
|
-
key: key,
|
|
151
|
-
rank_by: rank_by,
|
|
152
|
-
breakdown_attribute: breakdown_attribute,
|
|
153
|
-
breakdown_attributes: breakdown_attributes,
|
|
154
|
-
metric_key: metric_key,
|
|
155
|
-
metric_name: metric_name,
|
|
156
|
-
points_system_key: points_system_key,
|
|
157
|
-
points_system_name: points_system_name,
|
|
158
|
-
description: description,
|
|
159
|
-
start: start,
|
|
160
|
-
end_: end_,
|
|
161
|
-
max_participants: max_participants,
|
|
162
|
-
run_unit: run_unit,
|
|
163
|
-
run_interval: run_interval,
|
|
164
|
-
additional_properties: struct
|
|
165
|
-
)
|
|
166
|
-
end
|
|
167
|
-
|
|
168
|
-
# Serialize an instance of LeaderboardsAllResponseItem to a JSON object
|
|
169
|
-
#
|
|
170
|
-
# @return [String]
|
|
171
|
-
def to_json(*_args)
|
|
172
|
-
@_field_set&.to_json
|
|
173
|
-
end
|
|
174
|
-
|
|
175
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
176
|
-
# hash and check each fields type against the current object's property
|
|
177
|
-
# definitions.
|
|
178
|
-
#
|
|
179
|
-
# @param obj [Object]
|
|
180
|
-
# @return [Void]
|
|
181
|
-
def self.validate_raw(obj:)
|
|
182
|
-
obj.status.is_a?(TrophyApiClient::Leaderboards::LeaderboardsAllResponseItemStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
|
183
|
-
obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
|
184
|
-
obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
|
|
185
|
-
obj.key.is_a?(String) != false || raise("Passed value for field obj.key is not the expected type, validation failed.")
|
|
186
|
-
obj.rank_by.is_a?(TrophyApiClient::LeaderboardResponseRankBy) != false || raise("Passed value for field obj.rank_by is not the expected type, validation failed.")
|
|
187
|
-
obj.breakdown_attribute&.is_a?(String) != false || raise("Passed value for field obj.breakdown_attribute is not the expected type, validation failed.")
|
|
188
|
-
obj.breakdown_attributes.is_a?(Array) != false || raise("Passed value for field obj.breakdown_attributes is not the expected type, validation failed.")
|
|
189
|
-
obj.metric_key&.is_a?(String) != false || raise("Passed value for field obj.metric_key is not the expected type, validation failed.")
|
|
190
|
-
obj.metric_name&.is_a?(String) != false || raise("Passed value for field obj.metric_name is not the expected type, validation failed.")
|
|
191
|
-
obj.points_system_key&.is_a?(String) != false || raise("Passed value for field obj.points_system_key is not the expected type, validation failed.")
|
|
192
|
-
obj.points_system_name&.is_a?(String) != false || raise("Passed value for field obj.points_system_name is not the expected type, validation failed.")
|
|
193
|
-
obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
|
|
194
|
-
obj.start.is_a?(String) != false || raise("Passed value for field obj.start is not the expected type, validation failed.")
|
|
195
|
-
obj.end_&.is_a?(String) != false || raise("Passed value for field obj.end_ is not the expected type, validation failed.")
|
|
196
|
-
obj.max_participants&.is_a?(Integer) != false || raise("Passed value for field obj.max_participants is not the expected type, validation failed.")
|
|
197
|
-
obj.run_unit&.is_a?(TrophyApiClient::LeaderboardResponseRunUnit) != false || raise("Passed value for field obj.run_unit is not the expected type, validation failed.")
|
|
198
|
-
obj.run_interval&.is_a?(Integer) != false || raise("Passed value for field obj.run_interval is not the expected type, validation failed.")
|
|
199
|
-
end
|
|
200
|
-
end
|
|
201
|
-
end
|
|
202
|
-
end
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "../../requests"
|
|
4
|
-
require_relative "../types/upserted_user"
|
|
5
|
-
require_relative "../types/event_response"
|
|
6
|
-
require "async"
|
|
7
|
-
|
|
8
|
-
module TrophyApiClient
|
|
9
|
-
class MetricsClient
|
|
10
|
-
# @return [TrophyApiClient::RequestClient]
|
|
11
|
-
attr_reader :request_client
|
|
12
|
-
|
|
13
|
-
# @param request_client [TrophyApiClient::RequestClient]
|
|
14
|
-
# @return [TrophyApiClient::MetricsClient]
|
|
15
|
-
def initialize(request_client:)
|
|
16
|
-
@request_client = request_client
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
# Increment or decrement the value of a metric for a user.
|
|
20
|
-
#
|
|
21
|
-
# @param idempotency_key [String]
|
|
22
|
-
# @param key [String] Unique reference of the metric as set when created.
|
|
23
|
-
# @param user [Hash] The user that triggered the event.Request of type TrophyApiClient::UpsertedUser, as a Hash
|
|
24
|
-
# * :id (String)
|
|
25
|
-
# * :email (String)
|
|
26
|
-
# * :name (String)
|
|
27
|
-
# * :tz (String)
|
|
28
|
-
# * :device_tokens (Array<String>)
|
|
29
|
-
# * :subscribe_to_emails (Boolean)
|
|
30
|
-
# * :attributes (Hash{String => String})
|
|
31
|
-
# @param value [Float] The value to add to the user's current total for the given metric.
|
|
32
|
-
# @param attributes [Hash{String => String}] Event attributes as key-value pairs. Keys must match existing event attributes
|
|
33
|
-
# set up in the Trophy dashboard.
|
|
34
|
-
# @param request_options [TrophyApiClient::RequestOptions]
|
|
35
|
-
# @return [TrophyApiClient::EventResponse]
|
|
36
|
-
# @example
|
|
37
|
-
# api = TrophyApiClient::Client.new(
|
|
38
|
-
# base_url: "https://api.example.com",
|
|
39
|
-
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
40
|
-
# api_key: "YOUR_API_KEY"
|
|
41
|
-
# )
|
|
42
|
-
# api.metrics.event(
|
|
43
|
-
# idempotency_key: "e4296e4b-8493-4bd1-9c30-5a1a9ac4d78f",
|
|
44
|
-
# key: "words-written",
|
|
45
|
-
# user: { email: "user@example.com", tz: "Europe/London", attributes: { "department": "engineering", "role": "developer" }, id: "18" },
|
|
46
|
-
# value: 750,
|
|
47
|
-
# attributes: { "category": "writing", "source": "mobile-app" }
|
|
48
|
-
# )
|
|
49
|
-
def event(key:, user:, value:, idempotency_key: nil, attributes: nil, request_options: nil)
|
|
50
|
-
response = @request_client.conn.post do |req|
|
|
51
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
52
|
-
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
53
|
-
req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
|
|
54
|
-
req.headers = {
|
|
55
|
-
**(req.headers || {}),
|
|
56
|
-
**@request_client.get_headers,
|
|
57
|
-
**(request_options&.additional_headers || {}),
|
|
58
|
-
"Idempotency-Key": idempotency_key
|
|
59
|
-
}.compact
|
|
60
|
-
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
61
|
-
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
62
|
-
end
|
|
63
|
-
req.body = {
|
|
64
|
-
**(request_options&.additional_body_parameters || {}),
|
|
65
|
-
user: user,
|
|
66
|
-
value: value,
|
|
67
|
-
attributes: attributes
|
|
68
|
-
}.compact
|
|
69
|
-
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/metrics/#{key}/event"
|
|
70
|
-
end
|
|
71
|
-
TrophyApiClient::EventResponse.from_json(json_object: response.body)
|
|
72
|
-
end
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
class AsyncMetricsClient
|
|
76
|
-
# @return [TrophyApiClient::AsyncRequestClient]
|
|
77
|
-
attr_reader :request_client
|
|
78
|
-
|
|
79
|
-
# @param request_client [TrophyApiClient::AsyncRequestClient]
|
|
80
|
-
# @return [TrophyApiClient::AsyncMetricsClient]
|
|
81
|
-
def initialize(request_client:)
|
|
82
|
-
@request_client = request_client
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
# Increment or decrement the value of a metric for a user.
|
|
86
|
-
#
|
|
87
|
-
# @param idempotency_key [String]
|
|
88
|
-
# @param key [String] Unique reference of the metric as set when created.
|
|
89
|
-
# @param user [Hash] The user that triggered the event.Request of type TrophyApiClient::UpsertedUser, as a Hash
|
|
90
|
-
# * :id (String)
|
|
91
|
-
# * :email (String)
|
|
92
|
-
# * :name (String)
|
|
93
|
-
# * :tz (String)
|
|
94
|
-
# * :device_tokens (Array<String>)
|
|
95
|
-
# * :subscribe_to_emails (Boolean)
|
|
96
|
-
# * :attributes (Hash{String => String})
|
|
97
|
-
# @param value [Float] The value to add to the user's current total for the given metric.
|
|
98
|
-
# @param attributes [Hash{String => String}] Event attributes as key-value pairs. Keys must match existing event attributes
|
|
99
|
-
# set up in the Trophy dashboard.
|
|
100
|
-
# @param request_options [TrophyApiClient::RequestOptions]
|
|
101
|
-
# @return [TrophyApiClient::EventResponse]
|
|
102
|
-
# @example
|
|
103
|
-
# api = TrophyApiClient::Client.new(
|
|
104
|
-
# base_url: "https://api.example.com",
|
|
105
|
-
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
106
|
-
# api_key: "YOUR_API_KEY"
|
|
107
|
-
# )
|
|
108
|
-
# api.metrics.event(
|
|
109
|
-
# idempotency_key: "e4296e4b-8493-4bd1-9c30-5a1a9ac4d78f",
|
|
110
|
-
# key: "words-written",
|
|
111
|
-
# user: { email: "user@example.com", tz: "Europe/London", attributes: { "department": "engineering", "role": "developer" }, id: "18" },
|
|
112
|
-
# value: 750,
|
|
113
|
-
# attributes: { "category": "writing", "source": "mobile-app" }
|
|
114
|
-
# )
|
|
115
|
-
def event(key:, user:, value:, idempotency_key: nil, attributes: nil, request_options: nil)
|
|
116
|
-
Async do
|
|
117
|
-
response = @request_client.conn.post do |req|
|
|
118
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
119
|
-
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
120
|
-
req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
|
|
121
|
-
req.headers = {
|
|
122
|
-
**(req.headers || {}),
|
|
123
|
-
**@request_client.get_headers,
|
|
124
|
-
**(request_options&.additional_headers || {}),
|
|
125
|
-
"Idempotency-Key": idempotency_key
|
|
126
|
-
}.compact
|
|
127
|
-
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
128
|
-
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
129
|
-
end
|
|
130
|
-
req.body = {
|
|
131
|
-
**(request_options&.additional_body_parameters || {}),
|
|
132
|
-
user: user,
|
|
133
|
-
value: value,
|
|
134
|
-
attributes: attributes
|
|
135
|
-
}.compact
|
|
136
|
-
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/metrics/#{key}/event"
|
|
137
|
-
end
|
|
138
|
-
TrophyApiClient::EventResponse.from_json(json_object: response.body)
|
|
139
|
-
end
|
|
140
|
-
end
|
|
141
|
-
end
|
|
142
|
-
end
|