trophy_api_client 1.14.0 → 1.26.1

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 (635) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +9 -0
  3. data/.rubocop.yml +103 -0
  4. data/CONTRIBUTING.md +120 -0
  5. data/LICENSE +21 -0
  6. data/README.md +50 -0
  7. data/Rakefile +13 -0
  8. data/custom.gemspec.rb +5 -0
  9. data/lib/gemconfig.rb +1 -1
  10. data/lib/trophy/achievements/client.rb +93 -0
  11. data/lib/trophy/achievements/types/achievements_all_request.rb +11 -0
  12. data/lib/trophy/achievements/types/achievements_complete_request.rb +13 -0
  13. data/lib/trophy/admin/achievements/client.rb +201 -0
  14. data/lib/trophy/admin/achievements/types/achievements_delete_request.rb +13 -0
  15. data/lib/trophy/admin/achievements/types/achievements_list_request.rb +15 -0
  16. data/lib/trophy/admin/application_api_keys/client.rb +93 -0
  17. data/lib/trophy/admin/application_api_keys/types/application_api_keys_delete_request.rb +13 -0
  18. data/lib/trophy/admin/attributes/client.rb +200 -0
  19. data/lib/trophy/admin/attributes/types/attributes_delete_request.rb +13 -0
  20. data/lib/trophy/admin/attributes/types/attributes_list_request.rb +15 -0
  21. data/lib/trophy/admin/client.rb +68 -0
  22. data/lib/trophy/admin/environments/client.rb +52 -0
  23. data/lib/trophy/admin/leaderboards/client.rb +201 -0
  24. data/lib/trophy/admin/leaderboards/types/leaderboards_delete_request.rb +13 -0
  25. data/lib/trophy/admin/leaderboards/types/leaderboards_list_request.rb +15 -0
  26. data/lib/trophy/admin/metrics/client.rb +234 -0
  27. data/lib/trophy/admin/metrics/types/metrics_delete_request.rb +13 -0
  28. data/lib/trophy/admin/metrics/types/metrics_list_request.rb +15 -0
  29. data/lib/trophy/admin/points/boosts/client.rb +207 -0
  30. data/lib/trophy/admin/points/boosts/types/boosts_delete_request.rb +17 -0
  31. data/lib/trophy/admin/points/boosts/types/boosts_list_request.rb +19 -0
  32. data/lib/trophy/admin/points/client.rb +40 -0
  33. data/lib/trophy/admin/points/levels/client.rb +207 -0
  34. data/lib/trophy/admin/points/levels/types/levels_delete_request.rb +17 -0
  35. data/lib/trophy/admin/points/levels/types/levels_list_request.rb +19 -0
  36. data/lib/trophy/admin/points/systems/client.rb +203 -0
  37. data/lib/trophy/admin/points/systems/types/systems_delete_request.rb +15 -0
  38. data/lib/trophy/admin/points/systems/types/systems_list_request.rb +17 -0
  39. data/lib/trophy/admin/points/triggers/client.rb +208 -0
  40. data/lib/trophy/admin/points/triggers/types/triggers_delete_request.rb +17 -0
  41. data/lib/trophy/admin/points/triggers/types/triggers_list_request.rb +19 -0
  42. data/lib/trophy/admin/settings/client.rb +86 -0
  43. data/lib/trophy/admin/settings/types/update_admin_settings_request.rb +17 -0
  44. data/lib/trophy/admin/streaks/client.rb +106 -0
  45. data/lib/trophy/admin/streaks/freezes/client.rb +56 -0
  46. data/lib/trophy/admin/streaks/freezes/types/create_streak_freezes_request.rb +15 -0
  47. data/lib/trophy/admin/streaks/freezes/types/create_streak_freezes_request_freezes_item.rb +15 -0
  48. data/lib/trophy/admin/streaks/pauses/client.rb +95 -0
  49. data/lib/trophy/admin/streaks/pauses/types/create_streak_pauses_request.rb +15 -0
  50. data/lib/trophy/admin/streaks/pauses/types/create_streak_pauses_request_pauses_item.rb +19 -0
  51. data/lib/trophy/admin/streaks/pauses/types/pauses_delete_request.rb +15 -0
  52. data/lib/trophy/admin/streaks/settings/client.rb +88 -0
  53. data/lib/trophy/admin/streaks/settings/types/update_streak_settings_request.rb +25 -0
  54. data/lib/trophy/admin/streaks/types/reset_streaks_request.rb +13 -0
  55. data/lib/trophy/admin/streaks/types/reset_streaks_request_users_item.rb +13 -0
  56. data/lib/trophy/admin/streaks/types/restore_streaks_request.rb +13 -0
  57. data/lib/trophy/admin/streaks/types/restore_streaks_request_users_item.rb +13 -0
  58. data/lib/trophy/admin/tenants/client.rb +200 -0
  59. data/lib/trophy/admin/tenants/types/tenants_delete_request.rb +13 -0
  60. data/lib/trophy/admin/tenants/types/tenants_list_request.rb +15 -0
  61. data/lib/trophy/client.rb +62 -0
  62. data/lib/{environment.rb → trophy/environment.rb} +1 -1
  63. data/lib/trophy/errors/api_error.rb +8 -0
  64. data/lib/trophy/errors/client_error.rb +17 -0
  65. data/lib/trophy/errors/redirect_error.rb +8 -0
  66. data/lib/trophy/errors/response_error.rb +42 -0
  67. data/lib/trophy/errors/server_error.rb +11 -0
  68. data/lib/trophy/errors/timeout_error.rb +8 -0
  69. data/lib/trophy/internal/errors/constraint_error.rb +10 -0
  70. data/lib/trophy/internal/errors/type_error.rb +10 -0
  71. data/lib/trophy/internal/http/base_request.rb +51 -0
  72. data/lib/trophy/internal/http/raw_client.rb +215 -0
  73. data/lib/trophy/internal/iterators/cursor_item_iterator.rb +28 -0
  74. data/lib/trophy/internal/iterators/cursor_page_iterator.rb +63 -0
  75. data/lib/trophy/internal/iterators/item_iterator.rb +65 -0
  76. data/lib/trophy/internal/iterators/offset_item_iterator.rb +30 -0
  77. data/lib/trophy/internal/iterators/offset_page_iterator.rb +103 -0
  78. data/lib/trophy/internal/json/request.rb +41 -0
  79. data/lib/trophy/internal/json/serializable.rb +25 -0
  80. data/lib/trophy/internal/multipart/multipart_encoder.rb +141 -0
  81. data/lib/trophy/internal/multipart/multipart_form_data.rb +78 -0
  82. data/lib/trophy/internal/multipart/multipart_form_data_part.rb +51 -0
  83. data/lib/trophy/internal/multipart/multipart_request.rb +40 -0
  84. data/lib/trophy/internal/types/array.rb +47 -0
  85. data/lib/trophy/internal/types/boolean.rb +34 -0
  86. data/lib/trophy/internal/types/enum.rb +56 -0
  87. data/lib/trophy/internal/types/hash.rb +36 -0
  88. data/lib/trophy/internal/types/model/field.rb +38 -0
  89. data/lib/trophy/internal/types/model.rb +208 -0
  90. data/lib/trophy/internal/types/type.rb +35 -0
  91. data/lib/trophy/internal/types/union.rb +161 -0
  92. data/lib/trophy/internal/types/unknown.rb +15 -0
  93. data/lib/trophy/internal/types/utils.rb +116 -0
  94. data/lib/trophy/leaderboards/client.rb +101 -0
  95. data/lib/trophy/leaderboards/types/leaderboards_all_request.rb +11 -0
  96. data/lib/trophy/leaderboards/types/leaderboards_all_response_item.rb +47 -0
  97. data/lib/trophy/leaderboards/types/leaderboards_all_response_item_status.rb +15 -0
  98. data/lib/trophy/leaderboards/types/leaderboards_get_request.rb +21 -0
  99. data/lib/trophy/metrics/client.rb +62 -0
  100. data/lib/trophy/metrics/types/metrics_event_request.rb +19 -0
  101. data/lib/trophy/points/client.rb +194 -0
  102. data/lib/trophy/points/types/points_boosts_request.rb +13 -0
  103. data/lib/trophy/points/types/points_summary_request.rb +13 -0
  104. data/lib/trophy/streaks/client.rb +56 -0
  105. data/lib/trophy/streaks/types/streaks_list_request.rb +11 -0
  106. data/lib/trophy/types/achievement_completion_response.rb +13 -0
  107. data/lib/trophy/types/achievement_response.rb +37 -0
  108. data/lib/trophy/types/achievement_response_event_attribute.rb +13 -0
  109. data/lib/trophy/types/achievement_response_event_attributes_item.rb +11 -0
  110. data/lib/trophy/types/achievement_response_trigger.rb +15 -0
  111. data/lib/trophy/types/achievement_response_user_attributes_item.rb +11 -0
  112. data/lib/trophy/types/achievement_with_stats_response.rb +41 -0
  113. data/lib/trophy/types/admin_achievement.rb +37 -0
  114. data/lib/trophy/types/admin_achievement_badge.rb +9 -0
  115. data/lib/trophy/types/admin_achievement_event_attributes_item.rb +11 -0
  116. data/lib/trophy/types/admin_achievement_status.rb +13 -0
  117. data/lib/trophy/types/admin_achievement_trigger.rb +15 -0
  118. data/lib/trophy/types/admin_achievement_user_attributes_item.rb +11 -0
  119. data/lib/trophy/types/admin_aggregation_period.rb +12 -0
  120. data/lib/trophy/types/admin_attribute.rb +16 -0
  121. data/lib/trophy/types/admin_attribute_type.rb +12 -0
  122. data/lib/trophy/types/admin_environment.rb +14 -0
  123. data/lib/trophy/types/admin_error_body.rb +9 -0
  124. data/lib/trophy/types/admin_font_family.rb +19 -0
  125. data/lib/trophy/types/admin_issue.rb +20 -0
  126. data/lib/trophy/types/admin_issue_severity.rb +12 -0
  127. data/lib/trophy/types/admin_leaderboard.rb +40 -0
  128. data/lib/trophy/types/admin_leaderboard_rank_by.rb +13 -0
  129. data/lib/trophy/types/admin_leaderboard_run_unit.rb +13 -0
  130. data/lib/trophy/types/admin_leaderboard_status.rb +14 -0
  131. data/lib/trophy/types/admin_points_boost.rb +26 -0
  132. data/lib/trophy/types/admin_points_boost_rounding.rb +13 -0
  133. data/lib/{trophy_api_client/leaderboards/types/leaderboards_all_response_item_status.rb → trophy/types/admin_points_boost_status.rb} +5 -4
  134. data/lib/trophy/types/admin_points_boost_user_attributes_item.rb +11 -0
  135. data/lib/trophy/types/admin_points_level.rb +20 -0
  136. data/lib/trophy/types/admin_points_level_badge.rb +9 -0
  137. data/lib/trophy/types/admin_points_system.rb +22 -0
  138. data/lib/trophy/types/admin_points_system_badge.rb +9 -0
  139. data/lib/trophy/types/admin_points_system_status.rb +12 -0
  140. data/lib/trophy/types/admin_points_trigger.rb +34 -0
  141. data/lib/trophy/types/admin_points_trigger_event_attributes_item.rb +11 -0
  142. data/lib/trophy/types/admin_points_trigger_status.rb +12 -0
  143. data/lib/trophy/types/admin_points_trigger_time_unit.rb +12 -0
  144. data/lib/trophy/types/admin_points_trigger_type.rb +15 -0
  145. data/lib/trophy/types/admin_points_trigger_user_attributes_item.rb +11 -0
  146. data/lib/trophy/types/admin_settings.rb +14 -0
  147. data/lib/trophy/types/admin_settings_branding.rb +20 -0
  148. data/lib/trophy/types/admin_settings_branding_app_icon.rb +9 -0
  149. data/lib/trophy/types/admin_settings_branding_logo.rb +9 -0
  150. data/lib/trophy/types/admin_settings_experimentation.rb +12 -0
  151. data/lib/trophy/types/admin_streak_evaluation_mode.rb +12 -0
  152. data/lib/{trophy_api_client/users/types/users_points_event_summary_request_aggregation.rb → trophy/types/admin_streak_frequency.rb} +5 -3
  153. data/lib/trophy/types/admin_streak_pause.rb +18 -0
  154. data/lib/trophy/types/admin_streak_pause_status.rb +12 -0
  155. data/lib/trophy/types/admin_tenant.rb +20 -0
  156. data/lib/trophy/types/admin_tenant_status.rb +12 -0
  157. data/lib/trophy/types/base_streak_response.rb +27 -0
  158. data/lib/trophy/types/batch_events_response.rb +10 -0
  159. data/lib/trophy/types/batch_metric_event.rb +19 -0
  160. data/lib/trophy/types/batch_metric_event_user.rb +22 -0
  161. data/lib/trophy/types/bulk_streak_response.rb +23 -0
  162. data/lib/trophy/types/bulk_streak_response_item.rb +13 -0
  163. data/lib/trophy/types/create_achievement_request_item.rb +35 -0
  164. data/lib/trophy/types/create_achievement_request_item_badge.rb +10 -0
  165. data/lib/trophy/types/create_achievement_request_item_event_attributes_item.rb +11 -0
  166. data/lib/trophy/types/create_achievement_request_item_status.rb +13 -0
  167. data/lib/trophy/types/create_achievement_request_item_trigger.rb +15 -0
  168. data/lib/trophy/types/create_achievement_request_item_user_attributes_item.rb +11 -0
  169. data/lib/trophy/types/create_achievements_request.rb +23 -0
  170. data/lib/trophy/types/create_achievements_response.rb +12 -0
  171. data/lib/trophy/types/create_application_key_request_item.rb +10 -0
  172. data/lib/trophy/types/create_application_keys_request.rb +23 -0
  173. data/lib/trophy/types/create_application_keys_response.rb +12 -0
  174. data/lib/trophy/types/create_attribute_request_item.rb +14 -0
  175. data/lib/trophy/types/create_attribute_request_item_type.rb +12 -0
  176. data/lib/trophy/types/create_attributes_request.rb +23 -0
  177. data/lib/trophy/types/create_attributes_response.rb +12 -0
  178. data/lib/trophy/types/create_leaderboard_request_item.rb +38 -0
  179. data/lib/trophy/types/create_leaderboard_request_item_rank_by.rb +13 -0
  180. data/lib/trophy/types/create_leaderboard_request_item_run_unit.rb +13 -0
  181. data/lib/trophy/types/create_leaderboard_request_item_status.rb +14 -0
  182. data/lib/trophy/types/create_leaderboards_request.rb +23 -0
  183. data/lib/trophy/types/create_leaderboards_response.rb +12 -0
  184. data/lib/trophy/types/create_metric_request_item.rb +16 -0
  185. data/lib/trophy/types/create_metric_request_item_unit_type.rb +12 -0
  186. data/lib/trophy/types/create_metrics_request.rb +23 -0
  187. data/lib/trophy/types/create_metrics_response.rb +12 -0
  188. data/lib/trophy/types/create_points_boost_request_item.rb +23 -0
  189. data/lib/trophy/types/create_points_boost_request_item_rounding.rb +13 -0
  190. data/lib/trophy/types/create_points_boost_request_item_user_attributes_item.rb +11 -0
  191. data/lib/trophy/types/create_points_boosts_request.rb +23 -0
  192. data/lib/trophy/types/create_points_boosts_response.rb +12 -0
  193. data/lib/trophy/types/create_points_level_request_item.rb +18 -0
  194. data/lib/trophy/types/create_points_level_request_item_badge.rb +10 -0
  195. data/lib/trophy/types/create_points_levels_request.rb +23 -0
  196. data/lib/trophy/types/create_points_levels_response.rb +12 -0
  197. data/lib/trophy/types/create_points_system_request_item.rb +24 -0
  198. data/lib/trophy/types/create_points_system_request_item_badge.rb +9 -0
  199. data/lib/trophy/types/create_points_systems_request.rb +23 -0
  200. data/lib/trophy/types/create_points_systems_response.rb +12 -0
  201. data/lib/trophy/types/create_points_trigger_request_item.rb +32 -0
  202. data/lib/trophy/types/create_points_trigger_request_item_event_attributes_item.rb +11 -0
  203. data/lib/trophy/types/create_points_trigger_request_item_status.rb +12 -0
  204. data/lib/trophy/types/create_points_trigger_request_item_time_unit.rb +12 -0
  205. data/lib/trophy/types/create_points_trigger_request_item_type.rb +15 -0
  206. data/lib/trophy/types/create_points_trigger_request_item_user_attributes_item.rb +11 -0
  207. data/lib/trophy/types/create_points_triggers_request.rb +23 -0
  208. data/lib/trophy/types/create_points_triggers_response.rb +12 -0
  209. data/lib/trophy/types/create_streak_freezes_response.rb +10 -0
  210. data/lib/trophy/types/create_streak_pauses_response.rb +12 -0
  211. data/lib/trophy/types/create_tenant_request_item.rb +12 -0
  212. data/lib/trophy/types/create_tenants_request.rb +23 -0
  213. data/lib/trophy/types/create_tenants_response.rb +12 -0
  214. data/lib/trophy/types/created_admin_points_system.rb +29 -0
  215. data/lib/trophy/types/created_application_key.rb +16 -0
  216. data/lib/trophy/types/created_metric.rb +18 -0
  217. data/lib/trophy/types/created_metric_unit_type.rb +12 -0
  218. data/lib/trophy/types/delete_achievements_response.rb +13 -0
  219. data/lib/trophy/types/delete_application_keys_response.rb +12 -0
  220. data/lib/trophy/types/delete_attributes_response.rb +13 -0
  221. data/lib/trophy/types/delete_leaderboards_response.rb +12 -0
  222. data/lib/trophy/types/delete_metrics_response.rb +13 -0
  223. data/lib/trophy/types/delete_points_boosts_response.rb +12 -0
  224. data/lib/trophy/types/delete_points_levels_response.rb +12 -0
  225. data/lib/trophy/types/delete_points_systems_response.rb +12 -0
  226. data/lib/trophy/types/delete_points_triggers_response.rb +12 -0
  227. data/lib/trophy/types/delete_streak_pauses_response.rb +12 -0
  228. data/lib/trophy/types/delete_tenants_response.rb +12 -0
  229. data/lib/trophy/types/deleted_resource.rb +10 -0
  230. data/lib/trophy/types/error_body.rb +9 -0
  231. data/lib/trophy/types/event_response.rb +25 -0
  232. data/lib/trophy/types/get_user_points_response.rb +25 -0
  233. data/lib/trophy/types/leaderboard_event.rb +20 -0
  234. data/lib/trophy/types/leaderboard_ranking.rb +16 -0
  235. data/lib/trophy/types/leaderboard_response.rb +44 -0
  236. data/lib/trophy/types/leaderboard_response_rank_by.rb +13 -0
  237. data/lib/trophy/types/leaderboard_response_run_unit.rb +13 -0
  238. data/lib/trophy/types/leaderboard_response_with_rankings.rb +47 -0
  239. data/lib/trophy/types/leaderboard_response_with_rankings_status.rb +13 -0
  240. data/lib/trophy/types/list_achievements_response.rb +23 -0
  241. data/lib/trophy/types/list_attributes_response.rb +23 -0
  242. data/lib/trophy/types/list_environments_response.rb +23 -0
  243. data/lib/trophy/types/list_leaderboards_response.rb +23 -0
  244. data/lib/trophy/types/list_metrics_response.rb +23 -0
  245. data/lib/trophy/types/list_points_boosts_response.rb +23 -0
  246. data/lib/trophy/types/list_points_levels_response.rb +23 -0
  247. data/lib/trophy/types/list_points_systems_response.rb +23 -0
  248. data/lib/trophy/types/list_points_triggers_response.rb +23 -0
  249. data/lib/trophy/types/list_tenants_response.rb +23 -0
  250. data/lib/trophy/types/metric_event_leaderboard_response.rb +53 -0
  251. data/lib/trophy/types/metric_event_leaderboard_response_breakdown_attribute_values_item.rb +11 -0
  252. data/lib/trophy/types/metric_event_points_response.rb +28 -0
  253. data/lib/trophy/types/metric_event_streak_response.rb +30 -0
  254. data/lib/trophy/types/metric_response.rb +17 -0
  255. data/lib/trophy/types/notification_channel.rb +12 -0
  256. data/lib/trophy/types/notification_preferences.rb +16 -0
  257. data/lib/trophy/types/patch_points_boosts_request.rb +23 -0
  258. data/lib/trophy/types/patch_points_boosts_request_item.rb +21 -0
  259. data/lib/trophy/types/patch_points_boosts_request_item_rounding.rb +13 -0
  260. data/lib/trophy/types/patch_points_boosts_request_item_user_attributes_item.rb +11 -0
  261. data/lib/trophy/types/patch_points_boosts_response.rb +12 -0
  262. data/lib/trophy/types/patch_points_levels_request.rb +23 -0
  263. data/lib/trophy/types/patch_points_levels_request_item.rb +17 -0
  264. data/lib/trophy/types/patch_points_levels_request_item_badge.rb +9 -0
  265. data/lib/trophy/types/patch_points_levels_response.rb +12 -0
  266. data/lib/trophy/types/patch_points_triggers_request.rb +23 -0
  267. data/lib/trophy/types/patch_points_triggers_request_item.rb +33 -0
  268. data/lib/trophy/types/patch_points_triggers_request_item_event_attributes_item.rb +11 -0
  269. data/lib/trophy/types/patch_points_triggers_request_item_status.rb +12 -0
  270. data/lib/trophy/types/patch_points_triggers_request_item_time_unit.rb +12 -0
  271. data/lib/trophy/types/patch_points_triggers_request_item_type.rb +15 -0
  272. data/lib/trophy/types/patch_points_triggers_request_item_user_attributes_item.rb +11 -0
  273. data/lib/trophy/types/patch_points_triggers_response.rb +12 -0
  274. data/lib/trophy/types/points_award.rb +19 -0
  275. data/lib/trophy/types/points_boost.rb +21 -0
  276. data/lib/trophy/types/points_boost_rounding.rb +13 -0
  277. data/lib/trophy/types/points_boost_status.rb +13 -0
  278. data/lib/trophy/types/points_boost_webhook_payload.rb +30 -0
  279. data/lib/trophy/types/points_boost_webhook_payload_rounding.rb +13 -0
  280. data/lib/trophy/types/points_boost_webhook_payload_status.rb +12 -0
  281. data/lib/trophy/types/points_level.rb +20 -0
  282. data/lib/trophy/types/points_level_summary_response.rb +23 -0
  283. data/lib/trophy/types/points_level_summary_response_item.rb +11 -0
  284. data/lib/trophy/types/points_range.rb +13 -0
  285. data/lib/trophy/types/points_response.rb +20 -0
  286. data/lib/trophy/types/points_summary_response.rb +23 -0
  287. data/lib/trophy/types/points_system_response.rb +19 -0
  288. data/lib/trophy/types/points_trigger.rb +41 -0
  289. data/lib/trophy/types/points_trigger_event_attribute.rb +13 -0
  290. data/lib/trophy/types/points_trigger_event_attributes_item.rb +11 -0
  291. data/lib/trophy/types/points_trigger_status.rb +13 -0
  292. data/lib/trophy/types/points_trigger_time_unit.rb +12 -0
  293. data/lib/trophy/types/points_trigger_type.rb +15 -0
  294. data/lib/trophy/types/points_trigger_user_attributes_item.rb +11 -0
  295. data/lib/trophy/types/reset_streaks_response.rb +12 -0
  296. data/lib/trophy/types/restore_streaks_response.rb +12 -0
  297. data/lib/trophy/types/streak_evaluation_mode_preference.rb +12 -0
  298. data/lib/{trophy_api_client/users/types/users_metric_event_summary_request_aggregation.rb → trophy/types/streak_frequency.rb} +5 -3
  299. data/lib/trophy/types/streak_metric_preference.rb +12 -0
  300. data/lib/trophy/types/streak_preferences.rb +17 -0
  301. data/lib/trophy/types/streak_response.rb +34 -0
  302. data/lib/trophy/types/streak_response_pauses_item.rb +14 -0
  303. data/lib/trophy/types/streak_response_streak_history_item.rb +20 -0
  304. data/lib/trophy/types/streak_settings.rb +20 -0
  305. data/lib/trophy/types/streak_settings_freezes.rb +16 -0
  306. data/lib/trophy/types/streak_settings_metric.rb +12 -0
  307. data/lib/trophy/types/update_achievement_request_item.rb +37 -0
  308. data/lib/trophy/types/update_achievement_request_item_badge.rb +9 -0
  309. data/lib/trophy/types/update_achievement_request_item_event_attributes_item.rb +11 -0
  310. data/lib/trophy/types/update_achievement_request_item_status.rb +13 -0
  311. data/lib/trophy/types/update_achievement_request_item_trigger.rb +15 -0
  312. data/lib/trophy/types/update_achievement_request_item_user_attributes_item.rb +11 -0
  313. data/lib/trophy/types/update_achievements_request.rb +23 -0
  314. data/lib/trophy/types/update_achievements_response.rb +12 -0
  315. data/lib/trophy/types/update_admin_settings_branding.rb +20 -0
  316. data/lib/trophy/types/update_admin_settings_branding_app_icon.rb +9 -0
  317. data/lib/trophy/types/update_admin_settings_branding_logo.rb +9 -0
  318. data/lib/trophy/types/update_admin_settings_experimentation.rb +12 -0
  319. data/lib/trophy/types/update_attribute_request_item.rb +13 -0
  320. data/lib/trophy/types/update_attributes_request.rb +23 -0
  321. data/lib/trophy/types/update_attributes_response.rb +12 -0
  322. data/lib/trophy/types/update_leaderboard_request_item.rb +41 -0
  323. data/lib/trophy/types/update_leaderboard_request_item_rank_by.rb +13 -0
  324. data/lib/trophy/types/update_leaderboard_request_item_run_unit.rb +13 -0
  325. data/lib/trophy/types/update_leaderboard_request_item_status.rb +14 -0
  326. data/lib/trophy/types/update_leaderboards_request.rb +23 -0
  327. data/lib/trophy/types/update_leaderboards_response.rb +12 -0
  328. data/lib/trophy/types/update_metric_request_item.rb +17 -0
  329. data/lib/trophy/types/update_metric_request_item_unit_type.rb +12 -0
  330. data/lib/trophy/types/update_metrics_request.rb +23 -0
  331. data/lib/trophy/types/update_metrics_response.rb +12 -0
  332. data/lib/trophy/types/update_points_system_request_item.rb +18 -0
  333. data/lib/trophy/types/update_points_system_request_item_badge.rb +9 -0
  334. data/lib/trophy/types/update_points_systems_request.rb +23 -0
  335. data/lib/trophy/types/update_points_systems_response.rb +12 -0
  336. data/lib/trophy/types/update_streak_settings_freezes.rb +17 -0
  337. data/lib/trophy/types/update_tenant_request_item.rb +14 -0
  338. data/lib/trophy/types/update_tenants_request.rb +23 -0
  339. data/lib/trophy/types/update_tenants_response.rb +12 -0
  340. data/lib/trophy/types/updated_user.rb +22 -0
  341. data/lib/trophy/types/upserted_user.rb +24 -0
  342. data/lib/trophy/types/user.rb +30 -0
  343. data/lib/trophy/types/user_achievement_response.rb +39 -0
  344. data/lib/trophy/types/user_achievement_with_stats_response.rb +43 -0
  345. data/lib/trophy/types/user_leaderboard_response.rb +48 -0
  346. data/lib/trophy/types/user_leaderboard_response_with_history.rb +50 -0
  347. data/lib/trophy/types/user_preferences_response.rb +12 -0
  348. data/lib/trophy/types/webhook_user_leaderboard_response.rb +52 -0
  349. data/lib/trophy/types/webhooks_achievement_completed_payload.rb +13 -0
  350. data/lib/trophy/types/webhooks_emails_achievement_due_payload.rb +15 -0
  351. data/lib/trophy/types/webhooks_emails_reactivation_due_payload.rb +15 -0
  352. data/lib/trophy/types/webhooks_emails_reactivation_due_payload_reactivation.rb +12 -0
  353. data/lib/trophy/types/webhooks_emails_recap_due_payload.rb +15 -0
  354. data/lib/trophy/types/webhooks_emails_recap_due_payload_recap.rb +12 -0
  355. data/lib/trophy/types/webhooks_emails_streak_reminder_due_payload.rb +15 -0
  356. data/lib/trophy/types/webhooks_leaderboard_changed_payload.rb +11 -0
  357. data/lib/trophy/types/webhooks_leaderboard_finished_payload.rb +11 -0
  358. data/lib/trophy/types/webhooks_leaderboard_rank_changed_payload.rb +13 -0
  359. data/lib/trophy/types/webhooks_leaderboard_started_payload.rb +11 -0
  360. data/lib/trophy/types/webhooks_points_boost_finished_payload.rb +13 -0
  361. data/lib/trophy/types/webhooks_points_boost_started_payload.rb +13 -0
  362. data/lib/trophy/types/webhooks_points_changed_payload.rb +13 -0
  363. data/lib/trophy/types/webhooks_points_level_changed_payload.rb +17 -0
  364. data/lib/trophy/types/webhooks_points_level_changed_payload_points.rb +22 -0
  365. data/lib/trophy/types/webhooks_streak_extended_payload.rb +13 -0
  366. data/lib/trophy/types/webhooks_streak_freeze_consumed_payload.rb +15 -0
  367. data/lib/trophy/types/webhooks_streak_freeze_earned_payload.rb +15 -0
  368. data/lib/trophy/types/webhooks_streak_lost_payload.rb +13 -0
  369. data/lib/trophy/types/webhooks_streak_started_payload.rb +13 -0
  370. data/lib/trophy/types/wrapped_activity.rb +22 -0
  371. data/lib/trophy/types/wrapped_activity_period.rb +16 -0
  372. data/lib/trophy/types/wrapped_entire_year.rb +18 -0
  373. data/lib/trophy/types/wrapped_metric.rb +22 -0
  374. data/lib/trophy/types/wrapped_metric_by_attribute_value_value.rb +19 -0
  375. data/lib/trophy/types/wrapped_most_active_day.rb +18 -0
  376. data/lib/trophy/types/wrapped_most_active_month.rb +18 -0
  377. data/lib/trophy/types/wrapped_most_active_week.rb +20 -0
  378. data/lib/trophy/types/wrapped_points.rb +20 -0
  379. data/lib/trophy/types/wrapped_response.rb +13 -0
  380. data/lib/trophy/types/wrapped_streak.rb +18 -0
  381. data/lib/trophy/users/client.rb +612 -0
  382. data/lib/trophy/users/types/update_user_preferences_request.rb +15 -0
  383. data/lib/trophy/users/types/users_achievements_request.rb +13 -0
  384. data/lib/trophy/users/types/users_leaderboard_request.rb +17 -0
  385. data/lib/trophy/users/types/users_metric_event_summary_request.rb +19 -0
  386. data/lib/trophy/users/types/users_metric_event_summary_request_aggregation.rb +15 -0
  387. data/lib/trophy/users/types/users_metric_event_summary_response_item.rb +15 -0
  388. data/lib/trophy/users/types/users_points_event_summary_request.rb +19 -0
  389. data/lib/trophy/users/types/users_points_event_summary_request_aggregation.rb +15 -0
  390. data/lib/trophy/users/types/users_points_event_summary_response_item.rb +15 -0
  391. data/lib/trophy/users/types/users_points_request.rb +15 -0
  392. data/lib/trophy/users/types/users_streak_request.rb +13 -0
  393. data/lib/trophy/users/types/users_wrapped_request.rb +13 -0
  394. data/lib/trophy/version.rb +5 -0
  395. data/lib/trophy.rb +390 -0
  396. data/lib/trophy_api_client.rb +4 -101
  397. data/reference.md +6128 -0
  398. metadata +403 -333
  399. data/lib/requests.rb +0 -189
  400. data/lib/trophy_api_client/achievements/client.rb +0 -196
  401. data/lib/trophy_api_client/admin/attributes/client.rb +0 -378
  402. data/lib/trophy_api_client/admin/client.rb +0 -65
  403. data/lib/trophy_api_client/admin/leaderboards/client.rb +0 -381
  404. data/lib/trophy_api_client/admin/metrics/client.rb +0 -376
  405. data/lib/trophy_api_client/admin/points/boosts/client.rb +0 -410
  406. data/lib/trophy_api_client/admin/points/client.rb +0 -53
  407. data/lib/trophy_api_client/admin/points/levels/client.rb +0 -412
  408. data/lib/trophy_api_client/admin/points/systems/client.rb +0 -384
  409. data/lib/trophy_api_client/admin/points/triggers/client.rb +0 -412
  410. data/lib/trophy_api_client/admin/streaks/client.rb +0 -106
  411. data/lib/trophy_api_client/admin/streaks/freezes/client.rb +0 -100
  412. data/lib/trophy_api_client/admin/streaks/freezes/types/create_streak_freezes_request_freezes_item.rb +0 -62
  413. data/lib/trophy_api_client/admin/streaks/types/restore_streaks_request_users_item.rb +0 -59
  414. data/lib/trophy_api_client/admin/tenants/client.rb +0 -376
  415. data/lib/trophy_api_client/leaderboards/client.rb +0 -225
  416. data/lib/trophy_api_client/leaderboards/types/leaderboards_all_response_item.rb +0 -202
  417. data/lib/trophy_api_client/metrics/client.rb +0 -142
  418. data/lib/trophy_api_client/points/client.rb +0 -424
  419. data/lib/trophy_api_client/streaks/client.rb +0 -104
  420. data/lib/trophy_api_client/types/achievement_completion_response.rb +0 -83
  421. data/lib/trophy_api_client/types/achievement_response.rb +0 -198
  422. data/lib/trophy_api_client/types/achievement_response_event_attribute.rb +0 -67
  423. data/lib/trophy_api_client/types/achievement_response_event_attributes_item.rb +0 -66
  424. data/lib/trophy_api_client/types/achievement_response_trigger.rb +0 -11
  425. data/lib/trophy_api_client/types/achievement_response_user_attributes_item.rb +0 -66
  426. data/lib/trophy_api_client/types/achievement_with_stats_response.rb +0 -214
  427. data/lib/trophy_api_client/types/admin_attribute.rb +0 -81
  428. data/lib/trophy_api_client/types/admin_attribute_type.rb +0 -9
  429. data/lib/trophy_api_client/types/admin_issue.rb +0 -98
  430. data/lib/trophy_api_client/types/admin_issue_severity.rb +0 -9
  431. data/lib/trophy_api_client/types/admin_leaderboard.rb +0 -171
  432. data/lib/trophy_api_client/types/admin_leaderboard_rank_by.rb +0 -10
  433. data/lib/trophy_api_client/types/admin_leaderboard_run_unit.rb +0 -10
  434. data/lib/trophy_api_client/types/admin_leaderboard_status.rb +0 -11
  435. data/lib/trophy_api_client/types/admin_points_boost.rb +0 -138
  436. data/lib/trophy_api_client/types/admin_points_boost_rounding.rb +0 -10
  437. data/lib/trophy_api_client/types/admin_points_boost_status.rb +0 -10
  438. data/lib/trophy_api_client/types/admin_points_boost_user_attributes_item.rb +0 -65
  439. data/lib/trophy_api_client/types/admin_points_level.rb +0 -109
  440. data/lib/trophy_api_client/types/admin_points_level_badge.rb +0 -55
  441. data/lib/trophy_api_client/types/admin_points_system.rb +0 -118
  442. data/lib/trophy_api_client/types/admin_points_system_badge.rb +0 -55
  443. data/lib/trophy_api_client/types/admin_points_system_status.rb +0 -9
  444. data/lib/trophy_api_client/types/admin_points_trigger.rb +0 -175
  445. data/lib/trophy_api_client/types/admin_points_trigger_event_attributes_item.rb +0 -66
  446. data/lib/trophy_api_client/types/admin_points_trigger_status.rb +0 -9
  447. data/lib/trophy_api_client/types/admin_points_trigger_time_unit.rb +0 -9
  448. data/lib/trophy_api_client/types/admin_points_trigger_type.rb +0 -12
  449. data/lib/trophy_api_client/types/admin_points_trigger_user_attributes_item.rb +0 -65
  450. data/lib/trophy_api_client/types/admin_tenant.rb +0 -103
  451. data/lib/trophy_api_client/types/admin_tenant_status.rb +0 -9
  452. data/lib/trophy_api_client/types/base_streak_response.rb +0 -144
  453. data/lib/trophy_api_client/types/bulk_streak_response.rb +0 -7
  454. data/lib/trophy_api_client/types/bulk_streak_response_item.rb +0 -76
  455. data/lib/trophy_api_client/types/create_attribute_request_item.rb +0 -76
  456. data/lib/trophy_api_client/types/create_attribute_request_item_type.rb +0 -9
  457. data/lib/trophy_api_client/types/create_attributes_request.rb +0 -7
  458. data/lib/trophy_api_client/types/create_attributes_response.rb +0 -74
  459. data/lib/trophy_api_client/types/create_leaderboard_request_item.rb +0 -171
  460. data/lib/trophy_api_client/types/create_leaderboard_request_item_rank_by.rb +0 -10
  461. data/lib/trophy_api_client/types/create_leaderboard_request_item_run_unit.rb +0 -11
  462. data/lib/trophy_api_client/types/create_leaderboard_request_item_status.rb +0 -13
  463. data/lib/trophy_api_client/types/create_leaderboards_request.rb +0 -7
  464. data/lib/trophy_api_client/types/create_leaderboards_response.rb +0 -74
  465. data/lib/trophy_api_client/types/create_metric_request_item.rb +0 -87
  466. data/lib/trophy_api_client/types/create_metric_request_item_unit_type.rb +0 -9
  467. data/lib/trophy_api_client/types/create_metrics_request.rb +0 -7
  468. data/lib/trophy_api_client/types/create_metrics_response.rb +0 -74
  469. data/lib/trophy_api_client/types/create_points_boost_request_item.rb +0 -125
  470. data/lib/trophy_api_client/types/create_points_boost_request_item_rounding.rb +0 -10
  471. data/lib/trophy_api_client/types/create_points_boost_request_item_user_attributes_item.rb +0 -67
  472. data/lib/trophy_api_client/types/create_points_boosts_request.rb +0 -7
  473. data/lib/trophy_api_client/types/create_points_boosts_response.rb +0 -75
  474. data/lib/trophy_api_client/types/create_points_level_request_item.rb +0 -103
  475. data/lib/trophy_api_client/types/create_points_level_request_item_badge.rb +0 -56
  476. data/lib/trophy_api_client/types/create_points_levels_request.rb +0 -7
  477. data/lib/trophy_api_client/types/create_points_levels_response.rb +0 -74
  478. data/lib/trophy_api_client/types/create_points_system_request_item.rb +0 -140
  479. data/lib/trophy_api_client/types/create_points_system_request_item_badge.rb +0 -55
  480. data/lib/trophy_api_client/types/create_points_systems_request.rb +0 -7
  481. data/lib/trophy_api_client/types/create_points_systems_response.rb +0 -74
  482. data/lib/trophy_api_client/types/create_points_trigger_request_item.rb +0 -167
  483. data/lib/trophy_api_client/types/create_points_trigger_request_item_event_attributes_item.rb +0 -67
  484. data/lib/trophy_api_client/types/create_points_trigger_request_item_status.rb +0 -9
  485. data/lib/trophy_api_client/types/create_points_trigger_request_item_time_unit.rb +0 -9
  486. data/lib/trophy_api_client/types/create_points_trigger_request_item_type.rb +0 -12
  487. data/lib/trophy_api_client/types/create_points_trigger_request_item_user_attributes_item.rb +0 -67
  488. data/lib/trophy_api_client/types/create_points_triggers_request.rb +0 -7
  489. data/lib/trophy_api_client/types/create_points_triggers_response.rb +0 -74
  490. data/lib/trophy_api_client/types/create_streak_freezes_response.rb +0 -60
  491. data/lib/trophy_api_client/types/create_tenant_request_item.rb +0 -66
  492. data/lib/trophy_api_client/types/create_tenants_request.rb +0 -7
  493. data/lib/trophy_api_client/types/create_tenants_response.rb +0 -74
  494. data/lib/trophy_api_client/types/created_admin_points_system.rb +0 -163
  495. data/lib/trophy_api_client/types/created_metric.rb +0 -88
  496. data/lib/trophy_api_client/types/created_metric_unit_type.rb +0 -9
  497. data/lib/trophy_api_client/types/delete_attributes_response.rb +0 -75
  498. data/lib/trophy_api_client/types/delete_leaderboards_response.rb +0 -75
  499. data/lib/trophy_api_client/types/delete_metrics_response.rb +0 -75
  500. data/lib/trophy_api_client/types/delete_points_boosts_response.rb +0 -74
  501. data/lib/trophy_api_client/types/delete_points_levels_response.rb +0 -74
  502. data/lib/trophy_api_client/types/delete_points_systems_response.rb +0 -74
  503. data/lib/trophy_api_client/types/delete_points_triggers_response.rb +0 -75
  504. data/lib/trophy_api_client/types/delete_tenants_response.rb +0 -74
  505. data/lib/trophy_api_client/types/deleted_resource.rb +0 -56
  506. data/lib/trophy_api_client/types/error_body.rb +0 -55
  507. data/lib/trophy_api_client/types/event_response.rb +0 -147
  508. data/lib/trophy_api_client/types/get_user_points_response.rb +0 -139
  509. data/lib/trophy_api_client/types/leaderboard_event.rb +0 -110
  510. data/lib/trophy_api_client/types/leaderboard_ranking.rb +0 -82
  511. data/lib/trophy_api_client/types/leaderboard_response.rb +0 -192
  512. data/lib/trophy_api_client/types/leaderboard_response_rank_by.rb +0 -10
  513. data/lib/trophy_api_client/types/leaderboard_response_run_unit.rb +0 -11
  514. data/lib/trophy_api_client/types/leaderboard_response_with_rankings.rb +0 -212
  515. data/lib/trophy_api_client/types/leaderboard_response_with_rankings_status.rb +0 -10
  516. data/lib/trophy_api_client/types/list_attributes_response.rb +0 -7
  517. data/lib/trophy_api_client/types/list_leaderboards_response.rb +0 -7
  518. data/lib/trophy_api_client/types/list_metrics_response.rb +0 -7
  519. data/lib/trophy_api_client/types/list_points_boosts_response.rb +0 -7
  520. data/lib/trophy_api_client/types/list_points_levels_response.rb +0 -7
  521. data/lib/trophy_api_client/types/list_points_systems_response.rb +0 -7
  522. data/lib/trophy_api_client/types/list_points_triggers_response.rb +0 -7
  523. data/lib/trophy_api_client/types/list_tenants_response.rb +0 -7
  524. data/lib/trophy_api_client/types/metric_event_leaderboard_response.rb +0 -245
  525. data/lib/trophy_api_client/types/metric_event_leaderboard_response_breakdown_attribute_values_item.rb +0 -67
  526. data/lib/trophy_api_client/types/metric_event_points_response.rb +0 -148
  527. data/lib/trophy_api_client/types/metric_event_streak_response.rb +0 -153
  528. data/lib/trophy_api_client/types/metric_response.rb +0 -90
  529. data/lib/trophy_api_client/types/notification_channel.rb +0 -9
  530. data/lib/trophy_api_client/types/notification_preferences.rb +0 -89
  531. data/lib/trophy_api_client/types/patch_points_boosts_request.rb +0 -7
  532. data/lib/trophy_api_client/types/patch_points_boosts_request_item.rb +0 -118
  533. data/lib/trophy_api_client/types/patch_points_boosts_request_item_rounding.rb +0 -10
  534. data/lib/trophy_api_client/types/patch_points_boosts_request_item_user_attributes_item.rb +0 -67
  535. data/lib/trophy_api_client/types/patch_points_boosts_response.rb +0 -74
  536. data/lib/trophy_api_client/types/patch_points_levels_request.rb +0 -7
  537. data/lib/trophy_api_client/types/patch_points_levels_request_item.rb +0 -100
  538. data/lib/trophy_api_client/types/patch_points_levels_request_item_badge.rb +0 -55
  539. data/lib/trophy_api_client/types/patch_points_levels_response.rb +0 -74
  540. data/lib/trophy_api_client/types/patch_points_triggers_request.rb +0 -7
  541. data/lib/trophy_api_client/types/patch_points_triggers_request_item.rb +0 -174
  542. data/lib/trophy_api_client/types/patch_points_triggers_request_item_event_attributes_item.rb +0 -67
  543. data/lib/trophy_api_client/types/patch_points_triggers_request_item_status.rb +0 -9
  544. data/lib/trophy_api_client/types/patch_points_triggers_request_item_time_unit.rb +0 -9
  545. data/lib/trophy_api_client/types/patch_points_triggers_request_item_type.rb +0 -13
  546. data/lib/trophy_api_client/types/patch_points_triggers_request_item_user_attributes_item.rb +0 -67
  547. data/lib/trophy_api_client/types/patch_points_triggers_response.rb +0 -74
  548. data/lib/trophy_api_client/types/points_award.rb +0 -113
  549. data/lib/trophy_api_client/types/points_boost.rb +0 -112
  550. data/lib/trophy_api_client/types/points_boost_rounding.rb +0 -10
  551. data/lib/trophy_api_client/types/points_boost_status.rb +0 -10
  552. data/lib/trophy_api_client/types/points_boost_webhook_payload.rb +0 -149
  553. data/lib/trophy_api_client/types/points_boost_webhook_payload_rounding.rb +0 -10
  554. data/lib/trophy_api_client/types/points_boost_webhook_payload_status.rb +0 -9
  555. data/lib/trophy_api_client/types/points_level.rb +0 -103
  556. data/lib/trophy_api_client/types/points_level_summary_response.rb +0 -7
  557. data/lib/trophy_api_client/types/points_level_summary_response_item.rb +0 -71
  558. data/lib/trophy_api_client/types/points_range.rb +0 -72
  559. data/lib/trophy_api_client/types/points_response.rb +0 -103
  560. data/lib/trophy_api_client/types/points_summary_response.rb +0 -7
  561. data/lib/trophy_api_client/types/points_system_response.rb +0 -107
  562. data/lib/trophy_api_client/types/points_trigger.rb +0 -227
  563. data/lib/trophy_api_client/types/points_trigger_event_attribute.rb +0 -67
  564. data/lib/trophy_api_client/types/points_trigger_event_attributes_item.rb +0 -65
  565. data/lib/trophy_api_client/types/points_trigger_status.rb +0 -10
  566. data/lib/trophy_api_client/types/points_trigger_time_unit.rb +0 -9
  567. data/lib/trophy_api_client/types/points_trigger_type.rb +0 -12
  568. data/lib/trophy_api_client/types/points_trigger_user_attributes_item.rb +0 -65
  569. data/lib/trophy_api_client/types/restore_streaks_response.rb +0 -70
  570. data/lib/trophy_api_client/types/streak_evaluation_mode_preference.rb +0 -11
  571. data/lib/trophy_api_client/types/streak_frequency.rb +0 -9
  572. data/lib/trophy_api_client/types/streak_metric_preference.rb +0 -66
  573. data/lib/trophy_api_client/types/streak_preferences.rb +0 -83
  574. data/lib/trophy_api_client/types/streak_response.rb +0 -170
  575. data/lib/trophy_api_client/types/streak_response_streak_history_item.rb +0 -89
  576. data/lib/trophy_api_client/types/update_attribute_request_item.rb +0 -69
  577. data/lib/trophy_api_client/types/update_attributes_request.rb +0 -7
  578. data/lib/trophy_api_client/types/update_attributes_response.rb +0 -75
  579. data/lib/trophy_api_client/types/update_leaderboard_request_item.rb +0 -179
  580. data/lib/trophy_api_client/types/update_leaderboard_request_item_rank_by.rb +0 -11
  581. data/lib/trophy_api_client/types/update_leaderboard_request_item_run_unit.rb +0 -9
  582. data/lib/trophy_api_client/types/update_leaderboard_request_item_status.rb +0 -12
  583. data/lib/trophy_api_client/types/update_leaderboards_request.rb +0 -7
  584. data/lib/trophy_api_client/types/update_leaderboards_response.rb +0 -75
  585. data/lib/trophy_api_client/types/update_metric_request_item.rb +0 -86
  586. data/lib/trophy_api_client/types/update_metric_request_item_unit_type.rb +0 -9
  587. data/lib/trophy_api_client/types/update_metrics_request.rb +0 -7
  588. data/lib/trophy_api_client/types/update_metrics_response.rb +0 -75
  589. data/lib/trophy_api_client/types/update_points_system_request_item.rb +0 -102
  590. data/lib/trophy_api_client/types/update_points_system_request_item_badge.rb +0 -55
  591. data/lib/trophy_api_client/types/update_points_systems_request.rb +0 -7
  592. data/lib/trophy_api_client/types/update_points_systems_response.rb +0 -74
  593. data/lib/trophy_api_client/types/update_tenant_request_item.rb +0 -75
  594. data/lib/trophy_api_client/types/update_tenants_request.rb +0 -7
  595. data/lib/trophy_api_client/types/update_tenants_response.rb +0 -74
  596. data/lib/trophy_api_client/types/updated_user.rb +0 -108
  597. data/lib/trophy_api_client/types/upserted_user.rb +0 -116
  598. data/lib/trophy_api_client/types/user.rb +0 -141
  599. data/lib/trophy_api_client/types/user_achievement_response.rb +0 -209
  600. data/lib/trophy_api_client/types/user_achievement_with_stats_response.rb +0 -225
  601. data/lib/trophy_api_client/types/user_leaderboard_response.rb +0 -212
  602. data/lib/trophy_api_client/types/user_leaderboard_response_with_history.rb +0 -224
  603. data/lib/trophy_api_client/types/user_preferences_response.rb +0 -80
  604. data/lib/trophy_api_client/types/webhook_user_leaderboard_response.rb +0 -228
  605. data/lib/trophy_api_client/types/webhooks_achievement_completed_payload.rb +0 -84
  606. data/lib/trophy_api_client/types/webhooks_leaderboard_changed_payload.rb +0 -71
  607. data/lib/trophy_api_client/types/webhooks_leaderboard_finished_payload.rb +0 -71
  608. data/lib/trophy_api_client/types/webhooks_leaderboard_rank_changed_payload.rb +0 -85
  609. data/lib/trophy_api_client/types/webhooks_leaderboard_started_payload.rb +0 -71
  610. data/lib/trophy_api_client/types/webhooks_points_boost_finished_payload.rb +0 -79
  611. data/lib/trophy_api_client/types/webhooks_points_boost_started_payload.rb +0 -79
  612. data/lib/trophy_api_client/types/webhooks_points_changed_payload.rb +0 -84
  613. data/lib/trophy_api_client/types/webhooks_points_level_changed_payload.rb +0 -117
  614. data/lib/trophy_api_client/types/webhooks_points_level_changed_payload_points.rb +0 -114
  615. data/lib/trophy_api_client/types/webhooks_streak_extended_payload.rb +0 -84
  616. data/lib/trophy_api_client/types/webhooks_streak_freeze_consumed_payload.rb +0 -85
  617. data/lib/trophy_api_client/types/webhooks_streak_freeze_earned_payload.rb +0 -85
  618. data/lib/trophy_api_client/types/webhooks_streak_lost_payload.rb +0 -78
  619. data/lib/trophy_api_client/types/webhooks_streak_started_payload.rb +0 -84
  620. data/lib/trophy_api_client/types/wrapped_activity.rb +0 -134
  621. data/lib/trophy_api_client/types/wrapped_activity_period.rb +0 -95
  622. data/lib/trophy_api_client/types/wrapped_entire_year.rb +0 -114
  623. data/lib/trophy_api_client/types/wrapped_metric.rb +0 -119
  624. data/lib/trophy_api_client/types/wrapped_metric_by_attribute_value_value.rb +0 -103
  625. data/lib/trophy_api_client/types/wrapped_most_active_day.rb +0 -108
  626. data/lib/trophy_api_client/types/wrapped_most_active_month.rb +0 -108
  627. data/lib/trophy_api_client/types/wrapped_most_active_week.rb +0 -116
  628. data/lib/trophy_api_client/types/wrapped_points.rb +0 -106
  629. data/lib/trophy_api_client/types/wrapped_response.rb +0 -79
  630. data/lib/trophy_api_client/types/wrapped_streak.rb +0 -96
  631. data/lib/trophy_api_client/users/client.rb +0 -1356
  632. data/lib/trophy_api_client/users/types/users_metric_event_summary_response_item.rb +0 -76
  633. data/lib/trophy_api_client/users/types/users_points_event_summary_response_item.rb +0 -76
  634. data/lib/trophy_api_client/version.rb +0 -3
  635. data/lib/types_export.rb +0 -221
@@ -0,0 +1,208 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Points
6
+ module Triggers
7
+ class Client
8
+ # @param client [Trophy::Internal::Http::RawClient]
9
+ # @param base_url [String, nil]
10
+ # @param environment [Hash[Symbol, String], nil]
11
+ #
12
+ # @return [void]
13
+ def initialize(client:, base_url: nil, environment: nil)
14
+ @client = client
15
+ @base_url = base_url
16
+ @environment = environment
17
+ end
18
+
19
+ # List points triggers for a system.
20
+ #
21
+ # @param request_options [Hash]
22
+ # @param params [Hash]
23
+ # @option request_options [String] :base_url
24
+ # @option request_options [Hash{String => Object}] :additional_headers
25
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
26
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
27
+ # @option request_options [Integer] :timeout_in_seconds
28
+ # @option params [String] :system_id
29
+ # @option params [Integer, nil] :limit
30
+ # @option params [Integer, nil] :skip
31
+ #
32
+ # @return [Array[Trophy::Types::AdminPointsTrigger]]
33
+ def list(request_options: {}, **params)
34
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
35
+ query_params = {}
36
+ query_params["limit"] = params[:limit] if params.key?(:limit)
37
+ query_params["skip"] = params[:skip] if params.key?(:skip)
38
+
39
+ request = Trophy::Internal::JSON::Request.new(
40
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
41
+ method: "GET",
42
+ path: "points/#{URI.encode_uri_component(params[:system_id].to_s)}/triggers",
43
+ query: query_params,
44
+ request_options: request_options
45
+ )
46
+ begin
47
+ response = @client.send(request)
48
+ rescue Net::HTTPRequestTimeout
49
+ raise Trophy::Errors::TimeoutError
50
+ end
51
+ code = response.code.to_i
52
+ if code.between?(200, 299)
53
+ Trophy::Types::ListPointsTriggersResponse.load(response.body)
54
+ else
55
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
56
+ raise error_class.new(response.body, code: code)
57
+ end
58
+ end
59
+
60
+ # Create points triggers in bulk.
61
+ #
62
+ # @param request_options [Hash]
63
+ # @param params [Trophy::Types::CreatePointsTriggersRequest]
64
+ # @option request_options [String] :base_url
65
+ # @option request_options [Hash{String => Object}] :additional_headers
66
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
67
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
68
+ # @option request_options [Integer] :timeout_in_seconds
69
+ # @option params [String] :system_id
70
+ #
71
+ # @return [Trophy::Types::CreatePointsTriggersResponse]
72
+ def create(request_options: {}, **params)
73
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
74
+ request = Trophy::Internal::JSON::Request.new(
75
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
76
+ method: "POST",
77
+ path: "points/#{URI.encode_uri_component(params[:system_id].to_s)}/triggers",
78
+ body: params,
79
+ request_options: request_options
80
+ )
81
+ begin
82
+ response = @client.send(request)
83
+ rescue Net::HTTPRequestTimeout
84
+ raise Trophy::Errors::TimeoutError
85
+ end
86
+ code = response.code.to_i
87
+ if code.between?(200, 299)
88
+ Trophy::Types::CreatePointsTriggersResponse.load(response.body)
89
+ else
90
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
91
+ raise error_class.new(response.body, code: code)
92
+ end
93
+ end
94
+
95
+ # Delete points triggers by ID. Maximum 100 trigger IDs per request.
96
+ #
97
+ # @param request_options [Hash]
98
+ # @param params [Hash]
99
+ # @option request_options [String] :base_url
100
+ # @option request_options [Hash{String => Object}] :additional_headers
101
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
102
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
103
+ # @option request_options [Integer] :timeout_in_seconds
104
+ # @option params [String] :system_id
105
+ # @option params [String, nil] :ids
106
+ #
107
+ # @return [Trophy::Types::DeletePointsTriggersResponse]
108
+ def delete(request_options: {}, **params)
109
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
110
+ query_params = {}
111
+ query_params["ids"] = params[:ids] if params.key?(:ids)
112
+
113
+ request = Trophy::Internal::JSON::Request.new(
114
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
115
+ method: "DELETE",
116
+ path: "points/#{URI.encode_uri_component(params[:system_id].to_s)}/triggers",
117
+ query: query_params,
118
+ request_options: request_options
119
+ )
120
+ begin
121
+ response = @client.send(request)
122
+ rescue Net::HTTPRequestTimeout
123
+ raise Trophy::Errors::TimeoutError
124
+ end
125
+ code = response.code.to_i
126
+ if code.between?(200, 299)
127
+ Trophy::Types::DeletePointsTriggersResponse.load(response.body)
128
+ else
129
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
130
+ raise error_class.new(response.body, code: code)
131
+ end
132
+ end
133
+
134
+ # Update points triggers in bulk. Maximum 100 triggers per request. Only provided fields are updated; omitted
135
+ # fields are preserved.
136
+ #
137
+ # @param request_options [Hash]
138
+ # @param params [Trophy::Types::PatchPointsTriggersRequest]
139
+ # @option request_options [String] :base_url
140
+ # @option request_options [Hash{String => Object}] :additional_headers
141
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
142
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
143
+ # @option request_options [Integer] :timeout_in_seconds
144
+ # @option params [String] :system_id
145
+ #
146
+ # @return [Trophy::Types::PatchPointsTriggersResponse]
147
+ def update(request_options: {}, **params)
148
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
149
+ request = Trophy::Internal::JSON::Request.new(
150
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
151
+ method: "PATCH",
152
+ path: "points/#{URI.encode_uri_component(params[:system_id].to_s)}/triggers",
153
+ body: params,
154
+ request_options: request_options
155
+ )
156
+ begin
157
+ response = @client.send(request)
158
+ rescue Net::HTTPRequestTimeout
159
+ raise Trophy::Errors::TimeoutError
160
+ end
161
+ code = response.code.to_i
162
+ if code.between?(200, 299)
163
+ Trophy::Types::PatchPointsTriggersResponse.load(response.body)
164
+ else
165
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
166
+ raise error_class.new(response.body, code: code)
167
+ end
168
+ end
169
+
170
+ # Get a single points trigger by ID.
171
+ #
172
+ # @param request_options [Hash]
173
+ # @param params [Hash]
174
+ # @option request_options [String] :base_url
175
+ # @option request_options [Hash{String => Object}] :additional_headers
176
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
177
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
178
+ # @option request_options [Integer] :timeout_in_seconds
179
+ # @option params [String] :system_id
180
+ # @option params [String] :id
181
+ #
182
+ # @return [Trophy::Types::AdminPointsTrigger]
183
+ def get(request_options: {}, **params)
184
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
185
+ request = Trophy::Internal::JSON::Request.new(
186
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
187
+ method: "GET",
188
+ path: "points/#{URI.encode_uri_component(params[:system_id].to_s)}/triggers/#{URI.encode_uri_component(params[:id].to_s)}",
189
+ request_options: request_options
190
+ )
191
+ begin
192
+ response = @client.send(request)
193
+ rescue Net::HTTPRequestTimeout
194
+ raise Trophy::Errors::TimeoutError
195
+ end
196
+ code = response.code.to_i
197
+ if code.between?(200, 299)
198
+ Trophy::Types::AdminPointsTrigger.load(response.body)
199
+ else
200
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
201
+ raise error_class.new(response.body, code: code)
202
+ end
203
+ end
204
+ end
205
+ end
206
+ end
207
+ end
208
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Points
6
+ module Triggers
7
+ module Types
8
+ class TriggersDeleteRequest < Internal::Types::Model
9
+ field :system_id, -> { String }, optional: false, nullable: false, api_name: "systemId"
10
+
11
+ field :ids, -> { String }, optional: true, nullable: false
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Points
6
+ module Triggers
7
+ module Types
8
+ class TriggersListRequest < Internal::Types::Model
9
+ field :system_id, -> { String }, optional: false, nullable: false, api_name: "systemId"
10
+
11
+ field :limit, -> { Integer }, optional: true, nullable: false
12
+
13
+ field :skip, -> { Integer }, optional: true, nullable: false
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,86 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Settings
6
+ class Client
7
+ # @param client [Trophy::Internal::Http::RawClient]
8
+ # @param base_url [String, nil]
9
+ # @param environment [Hash[Symbol, String], nil]
10
+ #
11
+ # @return [void]
12
+ def initialize(client:, base_url: nil, environment: nil)
13
+ @client = client
14
+ @base_url = base_url
15
+ @environment = environment
16
+ end
17
+
18
+ # Get branding, experimentation, and aggregation settings.
19
+ #
20
+ # @param request_options [Hash]
21
+ # @param _params [Hash]
22
+ # @option request_options [String] :base_url
23
+ # @option request_options [Hash{String => Object}] :additional_headers
24
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
25
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
26
+ # @option request_options [Integer] :timeout_in_seconds
27
+ #
28
+ # @return [Trophy::Types::AdminSettings]
29
+ def get(request_options: {}, **_params)
30
+ request = Trophy::Internal::JSON::Request.new(
31
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
32
+ method: "GET",
33
+ path: "settings",
34
+ request_options: request_options
35
+ )
36
+ begin
37
+ response = @client.send(request)
38
+ rescue Net::HTTPRequestTimeout
39
+ raise Trophy::Errors::TimeoutError
40
+ end
41
+ code = response.code.to_i
42
+ if code.between?(200, 299)
43
+ Trophy::Types::AdminSettings.load(response.body)
44
+ else
45
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
46
+ raise error_class.new(response.body, code: code)
47
+ end
48
+ end
49
+
50
+ # Update branding, experimentation, and aggregation settings.
51
+ #
52
+ # @param request_options [Hash]
53
+ # @param params [Trophy::Admin::Settings::Types::UpdateAdminSettingsRequest]
54
+ # @option request_options [String] :base_url
55
+ # @option request_options [Hash{String => Object}] :additional_headers
56
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
57
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
58
+ # @option request_options [Integer] :timeout_in_seconds
59
+ #
60
+ # @return [Trophy::Types::AdminSettings]
61
+ def update(request_options: {}, **params)
62
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
63
+ request = Trophy::Internal::JSON::Request.new(
64
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
65
+ method: "PATCH",
66
+ path: "settings",
67
+ body: Trophy::Admin::Settings::Types::UpdateAdminSettingsRequest.new(params).to_h,
68
+ request_options: request_options
69
+ )
70
+ begin
71
+ response = @client.send(request)
72
+ rescue Net::HTTPRequestTimeout
73
+ raise Trophy::Errors::TimeoutError
74
+ end
75
+ code = response.code.to_i
76
+ if code.between?(200, 299)
77
+ Trophy::Types::AdminSettings.load(response.body)
78
+ else
79
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
80
+ raise error_class.new(response.body, code: code)
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Settings
6
+ module Types
7
+ class UpdateAdminSettingsRequest < Internal::Types::Model
8
+ field :branding, -> { Trophy::Types::UpdateAdminSettingsBranding }, optional: true, nullable: false
9
+
10
+ field :experimentation, -> { Trophy::Types::UpdateAdminSettingsExperimentation }, optional: true, nullable: false
11
+
12
+ field :aggregation_period, -> { Trophy::Types::AdminAggregationPeriod }, optional: true, nullable: false, api_name: "aggregationPeriod"
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,106 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ class Client
7
+ # @param client [Trophy::Internal::Http::RawClient]
8
+ # @param base_url [String, nil]
9
+ # @param environment [Hash[Symbol, String], nil]
10
+ #
11
+ # @return [void]
12
+ def initialize(client:, base_url: nil, environment: nil)
13
+ @client = client
14
+ @base_url = base_url
15
+ @environment = environment
16
+ end
17
+
18
+ # Restore streaks for multiple users to the maximum previously achieved streak length found within the current
19
+ # restore window: the last 90 days for daily streaks, weekly periods starting with the week containing the start
20
+ # of the current calendar year for weekly streaks, and monthly periods starting at the beginning of the previous
21
+ # calendar year for monthly streaks.
22
+ #
23
+ # @param request_options [Hash]
24
+ # @param params [Trophy::Admin::Streaks::Types::RestoreStreaksRequest]
25
+ # @option request_options [String] :base_url
26
+ # @option request_options [Hash{String => Object}] :additional_headers
27
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
28
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
29
+ # @option request_options [Integer] :timeout_in_seconds
30
+ #
31
+ # @return [Trophy::Types::RestoreStreaksResponse]
32
+ def restore(request_options: {}, **params)
33
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
34
+ request = Trophy::Internal::JSON::Request.new(
35
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
36
+ method: "POST",
37
+ path: "streaks/restore",
38
+ body: Trophy::Admin::Streaks::Types::RestoreStreaksRequest.new(params).to_h,
39
+ request_options: request_options
40
+ )
41
+ begin
42
+ response = @client.send(request)
43
+ rescue Net::HTTPRequestTimeout
44
+ raise Trophy::Errors::TimeoutError
45
+ end
46
+ code = response.code.to_i
47
+ if code.between?(200, 299)
48
+ Trophy::Types::RestoreStreaksResponse.load(response.body)
49
+ else
50
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
51
+ raise error_class.new(response.body, code: code)
52
+ end
53
+ end
54
+
55
+ # Reset the current streak to zero for multiple users.
56
+ #
57
+ # @param request_options [Hash]
58
+ # @param params [Trophy::Admin::Streaks::Types::ResetStreaksRequest]
59
+ # @option request_options [String] :base_url
60
+ # @option request_options [Hash{String => Object}] :additional_headers
61
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
62
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
63
+ # @option request_options [Integer] :timeout_in_seconds
64
+ #
65
+ # @return [Trophy::Types::ResetStreaksResponse]
66
+ def reset(request_options: {}, **params)
67
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
68
+ request = Trophy::Internal::JSON::Request.new(
69
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
70
+ method: "POST",
71
+ path: "streaks/reset",
72
+ body: Trophy::Admin::Streaks::Types::ResetStreaksRequest.new(params).to_h,
73
+ request_options: request_options
74
+ )
75
+ begin
76
+ response = @client.send(request)
77
+ rescue Net::HTTPRequestTimeout
78
+ raise Trophy::Errors::TimeoutError
79
+ end
80
+ code = response.code.to_i
81
+ if code.between?(200, 299)
82
+ Trophy::Types::ResetStreaksResponse.load(response.body)
83
+ else
84
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
85
+ raise error_class.new(response.body, code: code)
86
+ end
87
+ end
88
+
89
+ # @return [Trophy::Freezes::Client]
90
+ def freezes
91
+ @freezes ||= Trophy::Admin::Streaks::Freezes::Client.new(client: @client, base_url: @base_url, environment: @environment)
92
+ end
93
+
94
+ # @return [Trophy::Pauses::Client]
95
+ def pauses
96
+ @pauses ||= Trophy::Admin::Streaks::Pauses::Client.new(client: @client, base_url: @base_url, environment: @environment)
97
+ end
98
+
99
+ # @return [Trophy::Settings::Client]
100
+ def settings
101
+ @settings ||= Trophy::Admin::Streaks::Settings::Client.new(client: @client, base_url: @base_url, environment: @environment)
102
+ end
103
+ end
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ module Freezes
7
+ class Client
8
+ # @param client [Trophy::Internal::Http::RawClient]
9
+ # @param base_url [String, nil]
10
+ # @param environment [Hash[Symbol, String], nil]
11
+ #
12
+ # @return [void]
13
+ def initialize(client:, base_url: nil, environment: nil)
14
+ @client = client
15
+ @base_url = base_url
16
+ @environment = environment
17
+ end
18
+
19
+ # Create streak freezes for multiple users.
20
+ #
21
+ # @param request_options [Hash]
22
+ # @param params [Trophy::Admin::Streaks::Freezes::Types::CreateStreakFreezesRequest]
23
+ # @option request_options [String] :base_url
24
+ # @option request_options [Hash{String => Object}] :additional_headers
25
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
26
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
27
+ # @option request_options [Integer] :timeout_in_seconds
28
+ #
29
+ # @return [Trophy::Types::CreateStreakFreezesResponse]
30
+ def create(request_options: {}, **params)
31
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
32
+ request = Trophy::Internal::JSON::Request.new(
33
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
34
+ method: "POST",
35
+ path: "streaks/freezes",
36
+ body: Trophy::Admin::Streaks::Freezes::Types::CreateStreakFreezesRequest.new(params).to_h,
37
+ request_options: request_options
38
+ )
39
+ begin
40
+ response = @client.send(request)
41
+ rescue Net::HTTPRequestTimeout
42
+ raise Trophy::Errors::TimeoutError
43
+ end
44
+ code = response.code.to_i
45
+ if code.between?(200, 299)
46
+ Trophy::Types::CreateStreakFreezesResponse.load(response.body)
47
+ else
48
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
49
+ raise error_class.new(response.body, code: code)
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ module Freezes
7
+ module Types
8
+ class CreateStreakFreezesRequest < Internal::Types::Model
9
+ field :freezes, -> { Internal::Types::Array[Trophy::Admin::Streaks::Freezes::Types::CreateStreakFreezesRequestFreezesItem] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ module Freezes
7
+ module Types
8
+ class CreateStreakFreezesRequestFreezesItem < Internal::Types::Model
9
+ field :user_id, -> { String }, optional: false, nullable: false, api_name: "userId"
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,95 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ module Pauses
7
+ class Client
8
+ # @param client [Trophy::Internal::Http::RawClient]
9
+ # @param base_url [String, nil]
10
+ # @param environment [Hash[Symbol, String], nil]
11
+ #
12
+ # @return [void]
13
+ def initialize(client:, base_url: nil, environment: nil)
14
+ @client = client
15
+ @base_url = base_url
16
+ @environment = environment
17
+ end
18
+
19
+ # Create streak pauses for multiple users. A pause covers a specific date range and maintains the user's
20
+ # streak length during that range instead of ending the streak. Start dates in the past are rejected.
21
+ #
22
+ # @param request_options [Hash]
23
+ # @param params [Trophy::Admin::Streaks::Pauses::Types::CreateStreakPausesRequest]
24
+ # @option request_options [String] :base_url
25
+ # @option request_options [Hash{String => Object}] :additional_headers
26
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
27
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
28
+ # @option request_options [Integer] :timeout_in_seconds
29
+ #
30
+ # @return [Trophy::Types::CreateStreakPausesResponse]
31
+ def create(request_options: {}, **params)
32
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
33
+ request = Trophy::Internal::JSON::Request.new(
34
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
35
+ method: "POST",
36
+ path: "streaks/pauses",
37
+ body: Trophy::Admin::Streaks::Pauses::Types::CreateStreakPausesRequest.new(params).to_h,
38
+ request_options: request_options
39
+ )
40
+ begin
41
+ response = @client.send(request)
42
+ rescue Net::HTTPRequestTimeout
43
+ raise Trophy::Errors::TimeoutError
44
+ end
45
+ code = response.code.to_i
46
+ if code.between?(200, 299)
47
+ Trophy::Types::CreateStreakPausesResponse.load(response.body)
48
+ else
49
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
50
+ raise error_class.new(response.body, code: code)
51
+ end
52
+ end
53
+
54
+ # Delete streak pauses by ID.
55
+ #
56
+ # @param request_options [Hash]
57
+ # @param params [Hash]
58
+ # @option request_options [String] :base_url
59
+ # @option request_options [Hash{String => Object}] :additional_headers
60
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
61
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
62
+ # @option request_options [Integer] :timeout_in_seconds
63
+ # @option params [String, nil] :ids
64
+ #
65
+ # @return [Trophy::Types::DeleteStreakPausesResponse]
66
+ def delete(request_options: {}, **params)
67
+ params = Trophy::Internal::Types::Utils.normalize_keys(params)
68
+ query_params = {}
69
+ query_params["ids"] = params[:ids] if params.key?(:ids)
70
+
71
+ request = Trophy::Internal::JSON::Request.new(
72
+ base_url: request_options[:base_url] || @base_url || @environment&.dig(:admin),
73
+ method: "DELETE",
74
+ path: "streaks/pauses",
75
+ query: query_params,
76
+ request_options: request_options
77
+ )
78
+ begin
79
+ response = @client.send(request)
80
+ rescue Net::HTTPRequestTimeout
81
+ raise Trophy::Errors::TimeoutError
82
+ end
83
+ code = response.code.to_i
84
+ if code.between?(200, 299)
85
+ Trophy::Types::DeleteStreakPausesResponse.load(response.body)
86
+ else
87
+ error_class = Trophy::Errors::ResponseError.subclass_for_code(code)
88
+ raise error_class.new(response.body, code: code)
89
+ end
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ module Pauses
7
+ module Types
8
+ class CreateStreakPausesRequest < Internal::Types::Model
9
+ field :pauses, -> { Internal::Types::Array[Trophy::Admin::Streaks::Pauses::Types::CreateStreakPausesRequestPausesItem] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trophy
4
+ module Admin
5
+ module Streaks
6
+ module Pauses
7
+ module Types
8
+ class CreateStreakPausesRequestPausesItem < Internal::Types::Model
9
+ field :user_id, -> { String }, optional: false, nullable: false, api_name: "userId"
10
+
11
+ field :start, -> { String }, optional: false, nullable: false
12
+
13
+ field :end_, -> { String }, optional: false, nullable: false, api_name: "end"
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end