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.
Files changed (639) 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 +49 -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 +42 -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_leaderboard_user_attributes_item.rb +11 -0
  132. data/lib/trophy/types/admin_points_boost.rb +26 -0
  133. data/lib/trophy/types/admin_points_boost_rounding.rb +13 -0
  134. data/lib/{trophy_api_client/leaderboards/types/leaderboards_all_response_item_status.rb → trophy/types/admin_points_boost_status.rb} +5 -4
  135. data/lib/trophy/types/admin_points_boost_user_attributes_item.rb +11 -0
  136. data/lib/trophy/types/admin_points_level.rb +20 -0
  137. data/lib/trophy/types/admin_points_level_badge.rb +9 -0
  138. data/lib/trophy/types/admin_points_system.rb +22 -0
  139. data/lib/trophy/types/admin_points_system_badge.rb +9 -0
  140. data/lib/trophy/types/admin_points_system_status.rb +12 -0
  141. data/lib/trophy/types/admin_points_trigger.rb +34 -0
  142. data/lib/trophy/types/admin_points_trigger_event_attributes_item.rb +11 -0
  143. data/lib/trophy/types/admin_points_trigger_status.rb +12 -0
  144. data/lib/trophy/types/admin_points_trigger_time_unit.rb +12 -0
  145. data/lib/trophy/types/admin_points_trigger_type.rb +15 -0
  146. data/lib/trophy/types/admin_points_trigger_user_attributes_item.rb +11 -0
  147. data/lib/trophy/types/admin_settings.rb +14 -0
  148. data/lib/trophy/types/admin_settings_branding.rb +20 -0
  149. data/lib/trophy/types/admin_settings_branding_app_icon.rb +9 -0
  150. data/lib/trophy/types/admin_settings_branding_logo.rb +9 -0
  151. data/lib/trophy/types/admin_settings_experimentation.rb +12 -0
  152. data/lib/trophy/types/admin_streak_evaluation_mode.rb +12 -0
  153. data/lib/{trophy_api_client/users/types/users_points_event_summary_request_aggregation.rb → trophy/types/admin_streak_frequency.rb} +5 -3
  154. data/lib/trophy/types/admin_streak_pause.rb +18 -0
  155. data/lib/trophy/types/admin_streak_pause_status.rb +12 -0
  156. data/lib/trophy/types/admin_tenant.rb +20 -0
  157. data/lib/trophy/types/admin_tenant_status.rb +12 -0
  158. data/lib/trophy/types/base_streak_response.rb +27 -0
  159. data/lib/trophy/types/batch_events_response.rb +10 -0
  160. data/lib/trophy/types/batch_metric_event.rb +19 -0
  161. data/lib/trophy/types/batch_metric_event_user.rb +22 -0
  162. data/lib/trophy/types/bulk_streak_response.rb +23 -0
  163. data/lib/trophy/types/bulk_streak_response_item.rb +13 -0
  164. data/lib/trophy/types/create_achievement_request_item.rb +35 -0
  165. data/lib/trophy/types/create_achievement_request_item_badge.rb +10 -0
  166. data/lib/trophy/types/create_achievement_request_item_event_attributes_item.rb +11 -0
  167. data/lib/trophy/types/create_achievement_request_item_status.rb +13 -0
  168. data/lib/trophy/types/create_achievement_request_item_trigger.rb +15 -0
  169. data/lib/trophy/types/create_achievement_request_item_user_attributes_item.rb +11 -0
  170. data/lib/trophy/types/create_achievements_request.rb +23 -0
  171. data/lib/trophy/types/create_achievements_response.rb +12 -0
  172. data/lib/trophy/types/create_application_key_request_item.rb +10 -0
  173. data/lib/trophy/types/create_application_keys_request.rb +23 -0
  174. data/lib/trophy/types/create_application_keys_response.rb +12 -0
  175. data/lib/trophy/types/create_attribute_request_item.rb +14 -0
  176. data/lib/trophy/types/create_attribute_request_item_type.rb +12 -0
  177. data/lib/trophy/types/create_attributes_request.rb +23 -0
  178. data/lib/trophy/types/create_attributes_response.rb +12 -0
  179. data/lib/trophy/types/create_leaderboard_request_item.rb +40 -0
  180. data/lib/trophy/types/create_leaderboard_request_item_rank_by.rb +13 -0
  181. data/lib/trophy/types/create_leaderboard_request_item_run_unit.rb +13 -0
  182. data/lib/trophy/types/create_leaderboard_request_item_status.rb +14 -0
  183. data/lib/trophy/types/create_leaderboard_request_item_user_attributes_item.rb +11 -0
  184. data/lib/trophy/types/create_leaderboards_request.rb +23 -0
  185. data/lib/trophy/types/create_leaderboards_response.rb +12 -0
  186. data/lib/trophy/types/create_metric_request_item.rb +16 -0
  187. data/lib/trophy/types/create_metric_request_item_unit_type.rb +12 -0
  188. data/lib/trophy/types/create_metrics_request.rb +23 -0
  189. data/lib/trophy/types/create_metrics_response.rb +12 -0
  190. data/lib/trophy/types/create_points_boost_request_item.rb +23 -0
  191. data/lib/trophy/types/create_points_boost_request_item_rounding.rb +13 -0
  192. data/lib/trophy/types/create_points_boost_request_item_user_attributes_item.rb +11 -0
  193. data/lib/trophy/types/create_points_boosts_request.rb +23 -0
  194. data/lib/trophy/types/create_points_boosts_response.rb +12 -0
  195. data/lib/trophy/types/create_points_level_request_item.rb +18 -0
  196. data/lib/trophy/types/create_points_level_request_item_badge.rb +10 -0
  197. data/lib/trophy/types/create_points_levels_request.rb +23 -0
  198. data/lib/trophy/types/create_points_levels_response.rb +12 -0
  199. data/lib/trophy/types/create_points_system_request_item.rb +24 -0
  200. data/lib/trophy/types/create_points_system_request_item_badge.rb +9 -0
  201. data/lib/trophy/types/create_points_systems_request.rb +23 -0
  202. data/lib/trophy/types/create_points_systems_response.rb +12 -0
  203. data/lib/trophy/types/create_points_trigger_request_item.rb +32 -0
  204. data/lib/trophy/types/create_points_trigger_request_item_event_attributes_item.rb +11 -0
  205. data/lib/trophy/types/create_points_trigger_request_item_status.rb +12 -0
  206. data/lib/trophy/types/create_points_trigger_request_item_time_unit.rb +12 -0
  207. data/lib/trophy/types/create_points_trigger_request_item_type.rb +15 -0
  208. data/lib/trophy/types/create_points_trigger_request_item_user_attributes_item.rb +11 -0
  209. data/lib/trophy/types/create_points_triggers_request.rb +23 -0
  210. data/lib/trophy/types/create_points_triggers_response.rb +12 -0
  211. data/lib/trophy/types/create_streak_freezes_response.rb +10 -0
  212. data/lib/trophy/types/create_streak_pauses_response.rb +12 -0
  213. data/lib/trophy/types/create_tenant_request_item.rb +12 -0
  214. data/lib/trophy/types/create_tenants_request.rb +23 -0
  215. data/lib/trophy/types/create_tenants_response.rb +12 -0
  216. data/lib/trophy/types/created_admin_points_system.rb +29 -0
  217. data/lib/trophy/types/created_application_key.rb +16 -0
  218. data/lib/trophy/types/created_metric.rb +18 -0
  219. data/lib/trophy/types/created_metric_unit_type.rb +12 -0
  220. data/lib/trophy/types/delete_achievements_response.rb +13 -0
  221. data/lib/trophy/types/delete_application_keys_response.rb +12 -0
  222. data/lib/trophy/types/delete_attributes_response.rb +13 -0
  223. data/lib/trophy/types/delete_leaderboards_response.rb +12 -0
  224. data/lib/trophy/types/delete_metrics_response.rb +13 -0
  225. data/lib/trophy/types/delete_points_boosts_response.rb +12 -0
  226. data/lib/trophy/types/delete_points_levels_response.rb +12 -0
  227. data/lib/trophy/types/delete_points_systems_response.rb +12 -0
  228. data/lib/trophy/types/delete_points_triggers_response.rb +12 -0
  229. data/lib/trophy/types/delete_streak_pauses_response.rb +12 -0
  230. data/lib/trophy/types/delete_tenants_response.rb +12 -0
  231. data/lib/trophy/types/deleted_resource.rb +10 -0
  232. data/lib/trophy/types/error_body.rb +9 -0
  233. data/lib/trophy/types/event_response.rb +25 -0
  234. data/lib/trophy/types/get_user_points_response.rb +25 -0
  235. data/lib/trophy/types/leaderboard_event.rb +20 -0
  236. data/lib/trophy/types/leaderboard_ranking.rb +16 -0
  237. data/lib/trophy/types/leaderboard_response.rb +46 -0
  238. data/lib/trophy/types/leaderboard_response_rank_by.rb +13 -0
  239. data/lib/trophy/types/leaderboard_response_run_unit.rb +13 -0
  240. data/lib/trophy/types/leaderboard_response_user_attributes_item.rb +11 -0
  241. data/lib/trophy/types/leaderboard_response_with_rankings.rb +49 -0
  242. data/lib/trophy/types/leaderboard_response_with_rankings_status.rb +13 -0
  243. data/lib/trophy/types/list_achievements_response.rb +23 -0
  244. data/lib/trophy/types/list_attributes_response.rb +23 -0
  245. data/lib/trophy/types/list_environments_response.rb +23 -0
  246. data/lib/trophy/types/list_leaderboards_response.rb +23 -0
  247. data/lib/trophy/types/list_metrics_response.rb +23 -0
  248. data/lib/trophy/types/list_points_boosts_response.rb +23 -0
  249. data/lib/trophy/types/list_points_levels_response.rb +23 -0
  250. data/lib/trophy/types/list_points_systems_response.rb +23 -0
  251. data/lib/trophy/types/list_points_triggers_response.rb +23 -0
  252. data/lib/trophy/types/list_tenants_response.rb +23 -0
  253. data/lib/trophy/types/metric_event_leaderboard_response.rb +55 -0
  254. data/lib/trophy/types/metric_event_leaderboard_response_breakdown_attribute_values_item.rb +11 -0
  255. data/lib/trophy/types/metric_event_points_response.rb +28 -0
  256. data/lib/trophy/types/metric_event_streak_response.rb +30 -0
  257. data/lib/trophy/types/metric_response.rb +17 -0
  258. data/lib/trophy/types/notification_channel.rb +12 -0
  259. data/lib/trophy/types/notification_preferences.rb +16 -0
  260. data/lib/trophy/types/patch_points_boosts_request.rb +23 -0
  261. data/lib/trophy/types/patch_points_boosts_request_item.rb +21 -0
  262. data/lib/trophy/types/patch_points_boosts_request_item_rounding.rb +13 -0
  263. data/lib/trophy/types/patch_points_boosts_request_item_user_attributes_item.rb +11 -0
  264. data/lib/trophy/types/patch_points_boosts_response.rb +12 -0
  265. data/lib/trophy/types/patch_points_levels_request.rb +23 -0
  266. data/lib/trophy/types/patch_points_levels_request_item.rb +17 -0
  267. data/lib/trophy/types/patch_points_levels_request_item_badge.rb +9 -0
  268. data/lib/trophy/types/patch_points_levels_response.rb +12 -0
  269. data/lib/trophy/types/patch_points_triggers_request.rb +23 -0
  270. data/lib/trophy/types/patch_points_triggers_request_item.rb +33 -0
  271. data/lib/trophy/types/patch_points_triggers_request_item_event_attributes_item.rb +11 -0
  272. data/lib/trophy/types/patch_points_triggers_request_item_status.rb +12 -0
  273. data/lib/trophy/types/patch_points_triggers_request_item_time_unit.rb +12 -0
  274. data/lib/trophy/types/patch_points_triggers_request_item_type.rb +15 -0
  275. data/lib/trophy/types/patch_points_triggers_request_item_user_attributes_item.rb +11 -0
  276. data/lib/trophy/types/patch_points_triggers_response.rb +12 -0
  277. data/lib/trophy/types/points_award.rb +19 -0
  278. data/lib/trophy/types/points_boost.rb +21 -0
  279. data/lib/trophy/types/points_boost_rounding.rb +13 -0
  280. data/lib/trophy/types/points_boost_status.rb +13 -0
  281. data/lib/trophy/types/points_boost_webhook_payload.rb +30 -0
  282. data/lib/trophy/types/points_boost_webhook_payload_rounding.rb +13 -0
  283. data/lib/trophy/types/points_boost_webhook_payload_status.rb +12 -0
  284. data/lib/trophy/types/points_level.rb +20 -0
  285. data/lib/trophy/types/points_level_summary_response.rb +23 -0
  286. data/lib/trophy/types/points_level_summary_response_item.rb +11 -0
  287. data/lib/trophy/types/points_range.rb +13 -0
  288. data/lib/trophy/types/points_response.rb +20 -0
  289. data/lib/trophy/types/points_summary_response.rb +23 -0
  290. data/lib/trophy/types/points_system_response.rb +19 -0
  291. data/lib/trophy/types/points_trigger.rb +41 -0
  292. data/lib/trophy/types/points_trigger_event_attribute.rb +13 -0
  293. data/lib/trophy/types/points_trigger_event_attributes_item.rb +11 -0
  294. data/lib/trophy/types/points_trigger_status.rb +13 -0
  295. data/lib/trophy/types/points_trigger_time_unit.rb +12 -0
  296. data/lib/trophy/types/points_trigger_type.rb +15 -0
  297. data/lib/trophy/types/points_trigger_user_attributes_item.rb +11 -0
  298. data/lib/trophy/types/reset_streaks_response.rb +12 -0
  299. data/lib/trophy/types/restore_streaks_response.rb +12 -0
  300. data/lib/trophy/types/streak_evaluation_mode_preference.rb +12 -0
  301. data/lib/{trophy_api_client/users/types/users_metric_event_summary_request_aggregation.rb → trophy/types/streak_frequency.rb} +5 -3
  302. data/lib/trophy/types/streak_metric_preference.rb +12 -0
  303. data/lib/trophy/types/streak_preferences.rb +17 -0
  304. data/lib/trophy/types/streak_response.rb +34 -0
  305. data/lib/trophy/types/streak_response_pauses_item.rb +14 -0
  306. data/lib/trophy/types/streak_response_streak_history_item.rb +20 -0
  307. data/lib/trophy/types/streak_settings.rb +20 -0
  308. data/lib/trophy/types/streak_settings_freezes.rb +16 -0
  309. data/lib/trophy/types/streak_settings_metric.rb +12 -0
  310. data/lib/trophy/types/update_achievement_request_item.rb +37 -0
  311. data/lib/trophy/types/update_achievement_request_item_badge.rb +9 -0
  312. data/lib/trophy/types/update_achievement_request_item_event_attributes_item.rb +11 -0
  313. data/lib/trophy/types/update_achievement_request_item_status.rb +13 -0
  314. data/lib/trophy/types/update_achievement_request_item_trigger.rb +15 -0
  315. data/lib/trophy/types/update_achievement_request_item_user_attributes_item.rb +11 -0
  316. data/lib/trophy/types/update_achievements_request.rb +23 -0
  317. data/lib/trophy/types/update_achievements_response.rb +12 -0
  318. data/lib/trophy/types/update_admin_settings_branding.rb +20 -0
  319. data/lib/trophy/types/update_admin_settings_branding_app_icon.rb +9 -0
  320. data/lib/trophy/types/update_admin_settings_branding_logo.rb +9 -0
  321. data/lib/trophy/types/update_admin_settings_experimentation.rb +12 -0
  322. data/lib/trophy/types/update_attribute_request_item.rb +13 -0
  323. data/lib/trophy/types/update_attributes_request.rb +23 -0
  324. data/lib/trophy/types/update_attributes_response.rb +12 -0
  325. data/lib/trophy/types/update_leaderboard_request_item.rb +43 -0
  326. data/lib/trophy/types/update_leaderboard_request_item_rank_by.rb +13 -0
  327. data/lib/trophy/types/update_leaderboard_request_item_run_unit.rb +13 -0
  328. data/lib/trophy/types/update_leaderboard_request_item_status.rb +14 -0
  329. data/lib/trophy/types/update_leaderboard_request_item_user_attributes_item.rb +11 -0
  330. data/lib/trophy/types/update_leaderboards_request.rb +23 -0
  331. data/lib/trophy/types/update_leaderboards_response.rb +12 -0
  332. data/lib/trophy/types/update_metric_request_item.rb +17 -0
  333. data/lib/trophy/types/update_metric_request_item_unit_type.rb +12 -0
  334. data/lib/trophy/types/update_metrics_request.rb +23 -0
  335. data/lib/trophy/types/update_metrics_response.rb +12 -0
  336. data/lib/trophy/types/update_points_system_request_item.rb +18 -0
  337. data/lib/trophy/types/update_points_system_request_item_badge.rb +9 -0
  338. data/lib/trophy/types/update_points_systems_request.rb +23 -0
  339. data/lib/trophy/types/update_points_systems_response.rb +12 -0
  340. data/lib/trophy/types/update_streak_settings_freezes.rb +17 -0
  341. data/lib/trophy/types/update_tenant_request_item.rb +14 -0
  342. data/lib/trophy/types/update_tenants_request.rb +23 -0
  343. data/lib/trophy/types/update_tenants_response.rb +12 -0
  344. data/lib/trophy/types/updated_user.rb +22 -0
  345. data/lib/trophy/types/upserted_user.rb +24 -0
  346. data/lib/trophy/types/user.rb +30 -0
  347. data/lib/trophy/types/user_achievement_response.rb +39 -0
  348. data/lib/trophy/types/user_achievement_with_stats_response.rb +43 -0
  349. data/lib/trophy/types/user_leaderboard_response.rb +50 -0
  350. data/lib/trophy/types/user_leaderboard_response_with_history.rb +52 -0
  351. data/lib/trophy/types/user_preferences_response.rb +12 -0
  352. data/lib/trophy/types/webhook_user_leaderboard_response.rb +54 -0
  353. data/lib/trophy/types/webhooks_achievement_completed_payload.rb +13 -0
  354. data/lib/trophy/types/webhooks_emails_achievement_due_payload.rb +15 -0
  355. data/lib/trophy/types/webhooks_emails_reactivation_due_payload.rb +15 -0
  356. data/lib/trophy/types/webhooks_emails_reactivation_due_payload_reactivation.rb +12 -0
  357. data/lib/trophy/types/webhooks_emails_recap_due_payload.rb +15 -0
  358. data/lib/trophy/types/webhooks_emails_recap_due_payload_recap.rb +12 -0
  359. data/lib/trophy/types/webhooks_emails_streak_reminder_due_payload.rb +15 -0
  360. data/lib/trophy/types/webhooks_leaderboard_changed_payload.rb +11 -0
  361. data/lib/trophy/types/webhooks_leaderboard_finished_payload.rb +11 -0
  362. data/lib/trophy/types/webhooks_leaderboard_rank_changed_payload.rb +13 -0
  363. data/lib/trophy/types/webhooks_leaderboard_started_payload.rb +11 -0
  364. data/lib/trophy/types/webhooks_points_boost_finished_payload.rb +13 -0
  365. data/lib/trophy/types/webhooks_points_boost_started_payload.rb +13 -0
  366. data/lib/trophy/types/webhooks_points_changed_payload.rb +13 -0
  367. data/lib/trophy/types/webhooks_points_level_changed_payload.rb +17 -0
  368. data/lib/trophy/types/webhooks_points_level_changed_payload_points.rb +22 -0
  369. data/lib/trophy/types/webhooks_streak_extended_payload.rb +13 -0
  370. data/lib/trophy/types/webhooks_streak_freeze_consumed_payload.rb +15 -0
  371. data/lib/trophy/types/webhooks_streak_freeze_earned_payload.rb +15 -0
  372. data/lib/trophy/types/webhooks_streak_lost_payload.rb +13 -0
  373. data/lib/trophy/types/webhooks_streak_started_payload.rb +13 -0
  374. data/lib/trophy/types/wrapped_activity.rb +22 -0
  375. data/lib/trophy/types/wrapped_activity_period.rb +16 -0
  376. data/lib/trophy/types/wrapped_entire_year.rb +18 -0
  377. data/lib/trophy/types/wrapped_metric.rb +22 -0
  378. data/lib/trophy/types/wrapped_metric_by_attribute_value_value.rb +19 -0
  379. data/lib/trophy/types/wrapped_most_active_day.rb +18 -0
  380. data/lib/trophy/types/wrapped_most_active_month.rb +18 -0
  381. data/lib/trophy/types/wrapped_most_active_week.rb +20 -0
  382. data/lib/trophy/types/wrapped_points.rb +20 -0
  383. data/lib/trophy/types/wrapped_response.rb +13 -0
  384. data/lib/trophy/types/wrapped_streak.rb +18 -0
  385. data/lib/trophy/users/client.rb +612 -0
  386. data/lib/trophy/users/types/update_user_preferences_request.rb +15 -0
  387. data/lib/trophy/users/types/users_achievements_request.rb +13 -0
  388. data/lib/trophy/users/types/users_leaderboard_request.rb +17 -0
  389. data/lib/trophy/users/types/users_metric_event_summary_request.rb +19 -0
  390. data/lib/trophy/users/types/users_metric_event_summary_request_aggregation.rb +15 -0
  391. data/lib/trophy/users/types/users_metric_event_summary_response_item.rb +15 -0
  392. data/lib/trophy/users/types/users_points_event_summary_request.rb +19 -0
  393. data/lib/trophy/users/types/users_points_event_summary_request_aggregation.rb +15 -0
  394. data/lib/trophy/users/types/users_points_event_summary_response_item.rb +15 -0
  395. data/lib/trophy/users/types/users_points_request.rb +15 -0
  396. data/lib/trophy/users/types/users_streak_request.rb +13 -0
  397. data/lib/trophy/users/types/users_wrapped_request.rb +13 -0
  398. data/lib/trophy/version.rb +5 -0
  399. data/lib/trophy.rb +394 -0
  400. data/lib/trophy_api_client.rb +4 -101
  401. data/reference.md +6128 -0
  402. metadata +407 -333
  403. data/lib/requests.rb +0 -189
  404. data/lib/trophy_api_client/achievements/client.rb +0 -196
  405. data/lib/trophy_api_client/admin/attributes/client.rb +0 -378
  406. data/lib/trophy_api_client/admin/client.rb +0 -65
  407. data/lib/trophy_api_client/admin/leaderboards/client.rb +0 -381
  408. data/lib/trophy_api_client/admin/metrics/client.rb +0 -376
  409. data/lib/trophy_api_client/admin/points/boosts/client.rb +0 -410
  410. data/lib/trophy_api_client/admin/points/client.rb +0 -53
  411. data/lib/trophy_api_client/admin/points/levels/client.rb +0 -412
  412. data/lib/trophy_api_client/admin/points/systems/client.rb +0 -384
  413. data/lib/trophy_api_client/admin/points/triggers/client.rb +0 -412
  414. data/lib/trophy_api_client/admin/streaks/client.rb +0 -106
  415. data/lib/trophy_api_client/admin/streaks/freezes/client.rb +0 -100
  416. data/lib/trophy_api_client/admin/streaks/freezes/types/create_streak_freezes_request_freezes_item.rb +0 -62
  417. data/lib/trophy_api_client/admin/streaks/types/restore_streaks_request_users_item.rb +0 -59
  418. data/lib/trophy_api_client/admin/tenants/client.rb +0 -376
  419. data/lib/trophy_api_client/leaderboards/client.rb +0 -225
  420. data/lib/trophy_api_client/leaderboards/types/leaderboards_all_response_item.rb +0 -202
  421. data/lib/trophy_api_client/metrics/client.rb +0 -142
  422. data/lib/trophy_api_client/points/client.rb +0 -424
  423. data/lib/trophy_api_client/streaks/client.rb +0 -104
  424. data/lib/trophy_api_client/types/achievement_completion_response.rb +0 -83
  425. data/lib/trophy_api_client/types/achievement_response.rb +0 -198
  426. data/lib/trophy_api_client/types/achievement_response_event_attribute.rb +0 -67
  427. data/lib/trophy_api_client/types/achievement_response_event_attributes_item.rb +0 -66
  428. data/lib/trophy_api_client/types/achievement_response_trigger.rb +0 -11
  429. data/lib/trophy_api_client/types/achievement_response_user_attributes_item.rb +0 -66
  430. data/lib/trophy_api_client/types/achievement_with_stats_response.rb +0 -214
  431. data/lib/trophy_api_client/types/admin_attribute.rb +0 -81
  432. data/lib/trophy_api_client/types/admin_attribute_type.rb +0 -9
  433. data/lib/trophy_api_client/types/admin_issue.rb +0 -98
  434. data/lib/trophy_api_client/types/admin_issue_severity.rb +0 -9
  435. data/lib/trophy_api_client/types/admin_leaderboard.rb +0 -171
  436. data/lib/trophy_api_client/types/admin_leaderboard_rank_by.rb +0 -10
  437. data/lib/trophy_api_client/types/admin_leaderboard_run_unit.rb +0 -10
  438. data/lib/trophy_api_client/types/admin_leaderboard_status.rb +0 -11
  439. data/lib/trophy_api_client/types/admin_points_boost.rb +0 -138
  440. data/lib/trophy_api_client/types/admin_points_boost_rounding.rb +0 -10
  441. data/lib/trophy_api_client/types/admin_points_boost_status.rb +0 -10
  442. data/lib/trophy_api_client/types/admin_points_boost_user_attributes_item.rb +0 -65
  443. data/lib/trophy_api_client/types/admin_points_level.rb +0 -109
  444. data/lib/trophy_api_client/types/admin_points_level_badge.rb +0 -55
  445. data/lib/trophy_api_client/types/admin_points_system.rb +0 -118
  446. data/lib/trophy_api_client/types/admin_points_system_badge.rb +0 -55
  447. data/lib/trophy_api_client/types/admin_points_system_status.rb +0 -9
  448. data/lib/trophy_api_client/types/admin_points_trigger.rb +0 -175
  449. data/lib/trophy_api_client/types/admin_points_trigger_event_attributes_item.rb +0 -66
  450. data/lib/trophy_api_client/types/admin_points_trigger_status.rb +0 -9
  451. data/lib/trophy_api_client/types/admin_points_trigger_time_unit.rb +0 -9
  452. data/lib/trophy_api_client/types/admin_points_trigger_type.rb +0 -12
  453. data/lib/trophy_api_client/types/admin_points_trigger_user_attributes_item.rb +0 -65
  454. data/lib/trophy_api_client/types/admin_tenant.rb +0 -103
  455. data/lib/trophy_api_client/types/admin_tenant_status.rb +0 -9
  456. data/lib/trophy_api_client/types/base_streak_response.rb +0 -144
  457. data/lib/trophy_api_client/types/bulk_streak_response.rb +0 -7
  458. data/lib/trophy_api_client/types/bulk_streak_response_item.rb +0 -76
  459. data/lib/trophy_api_client/types/create_attribute_request_item.rb +0 -76
  460. data/lib/trophy_api_client/types/create_attribute_request_item_type.rb +0 -9
  461. data/lib/trophy_api_client/types/create_attributes_request.rb +0 -7
  462. data/lib/trophy_api_client/types/create_attributes_response.rb +0 -74
  463. data/lib/trophy_api_client/types/create_leaderboard_request_item.rb +0 -171
  464. data/lib/trophy_api_client/types/create_leaderboard_request_item_rank_by.rb +0 -10
  465. data/lib/trophy_api_client/types/create_leaderboard_request_item_run_unit.rb +0 -11
  466. data/lib/trophy_api_client/types/create_leaderboard_request_item_status.rb +0 -13
  467. data/lib/trophy_api_client/types/create_leaderboards_request.rb +0 -7
  468. data/lib/trophy_api_client/types/create_leaderboards_response.rb +0 -74
  469. data/lib/trophy_api_client/types/create_metric_request_item.rb +0 -87
  470. data/lib/trophy_api_client/types/create_metric_request_item_unit_type.rb +0 -9
  471. data/lib/trophy_api_client/types/create_metrics_request.rb +0 -7
  472. data/lib/trophy_api_client/types/create_metrics_response.rb +0 -74
  473. data/lib/trophy_api_client/types/create_points_boost_request_item.rb +0 -125
  474. data/lib/trophy_api_client/types/create_points_boost_request_item_rounding.rb +0 -10
  475. data/lib/trophy_api_client/types/create_points_boost_request_item_user_attributes_item.rb +0 -67
  476. data/lib/trophy_api_client/types/create_points_boosts_request.rb +0 -7
  477. data/lib/trophy_api_client/types/create_points_boosts_response.rb +0 -75
  478. data/lib/trophy_api_client/types/create_points_level_request_item.rb +0 -103
  479. data/lib/trophy_api_client/types/create_points_level_request_item_badge.rb +0 -56
  480. data/lib/trophy_api_client/types/create_points_levels_request.rb +0 -7
  481. data/lib/trophy_api_client/types/create_points_levels_response.rb +0 -74
  482. data/lib/trophy_api_client/types/create_points_system_request_item.rb +0 -140
  483. data/lib/trophy_api_client/types/create_points_system_request_item_badge.rb +0 -55
  484. data/lib/trophy_api_client/types/create_points_systems_request.rb +0 -7
  485. data/lib/trophy_api_client/types/create_points_systems_response.rb +0 -74
  486. data/lib/trophy_api_client/types/create_points_trigger_request_item.rb +0 -167
  487. data/lib/trophy_api_client/types/create_points_trigger_request_item_event_attributes_item.rb +0 -67
  488. data/lib/trophy_api_client/types/create_points_trigger_request_item_status.rb +0 -9
  489. data/lib/trophy_api_client/types/create_points_trigger_request_item_time_unit.rb +0 -9
  490. data/lib/trophy_api_client/types/create_points_trigger_request_item_type.rb +0 -12
  491. data/lib/trophy_api_client/types/create_points_trigger_request_item_user_attributes_item.rb +0 -67
  492. data/lib/trophy_api_client/types/create_points_triggers_request.rb +0 -7
  493. data/lib/trophy_api_client/types/create_points_triggers_response.rb +0 -74
  494. data/lib/trophy_api_client/types/create_streak_freezes_response.rb +0 -60
  495. data/lib/trophy_api_client/types/create_tenant_request_item.rb +0 -66
  496. data/lib/trophy_api_client/types/create_tenants_request.rb +0 -7
  497. data/lib/trophy_api_client/types/create_tenants_response.rb +0 -74
  498. data/lib/trophy_api_client/types/created_admin_points_system.rb +0 -163
  499. data/lib/trophy_api_client/types/created_metric.rb +0 -88
  500. data/lib/trophy_api_client/types/created_metric_unit_type.rb +0 -9
  501. data/lib/trophy_api_client/types/delete_attributes_response.rb +0 -75
  502. data/lib/trophy_api_client/types/delete_leaderboards_response.rb +0 -75
  503. data/lib/trophy_api_client/types/delete_metrics_response.rb +0 -75
  504. data/lib/trophy_api_client/types/delete_points_boosts_response.rb +0 -74
  505. data/lib/trophy_api_client/types/delete_points_levels_response.rb +0 -74
  506. data/lib/trophy_api_client/types/delete_points_systems_response.rb +0 -74
  507. data/lib/trophy_api_client/types/delete_points_triggers_response.rb +0 -75
  508. data/lib/trophy_api_client/types/delete_tenants_response.rb +0 -74
  509. data/lib/trophy_api_client/types/deleted_resource.rb +0 -56
  510. data/lib/trophy_api_client/types/error_body.rb +0 -55
  511. data/lib/trophy_api_client/types/event_response.rb +0 -147
  512. data/lib/trophy_api_client/types/get_user_points_response.rb +0 -139
  513. data/lib/trophy_api_client/types/leaderboard_event.rb +0 -110
  514. data/lib/trophy_api_client/types/leaderboard_ranking.rb +0 -82
  515. data/lib/trophy_api_client/types/leaderboard_response.rb +0 -192
  516. data/lib/trophy_api_client/types/leaderboard_response_rank_by.rb +0 -10
  517. data/lib/trophy_api_client/types/leaderboard_response_run_unit.rb +0 -11
  518. data/lib/trophy_api_client/types/leaderboard_response_with_rankings.rb +0 -212
  519. data/lib/trophy_api_client/types/leaderboard_response_with_rankings_status.rb +0 -10
  520. data/lib/trophy_api_client/types/list_attributes_response.rb +0 -7
  521. data/lib/trophy_api_client/types/list_leaderboards_response.rb +0 -7
  522. data/lib/trophy_api_client/types/list_metrics_response.rb +0 -7
  523. data/lib/trophy_api_client/types/list_points_boosts_response.rb +0 -7
  524. data/lib/trophy_api_client/types/list_points_levels_response.rb +0 -7
  525. data/lib/trophy_api_client/types/list_points_systems_response.rb +0 -7
  526. data/lib/trophy_api_client/types/list_points_triggers_response.rb +0 -7
  527. data/lib/trophy_api_client/types/list_tenants_response.rb +0 -7
  528. data/lib/trophy_api_client/types/metric_event_leaderboard_response.rb +0 -245
  529. data/lib/trophy_api_client/types/metric_event_leaderboard_response_breakdown_attribute_values_item.rb +0 -67
  530. data/lib/trophy_api_client/types/metric_event_points_response.rb +0 -148
  531. data/lib/trophy_api_client/types/metric_event_streak_response.rb +0 -153
  532. data/lib/trophy_api_client/types/metric_response.rb +0 -90
  533. data/lib/trophy_api_client/types/notification_channel.rb +0 -9
  534. data/lib/trophy_api_client/types/notification_preferences.rb +0 -89
  535. data/lib/trophy_api_client/types/patch_points_boosts_request.rb +0 -7
  536. data/lib/trophy_api_client/types/patch_points_boosts_request_item.rb +0 -118
  537. data/lib/trophy_api_client/types/patch_points_boosts_request_item_rounding.rb +0 -10
  538. data/lib/trophy_api_client/types/patch_points_boosts_request_item_user_attributes_item.rb +0 -67
  539. data/lib/trophy_api_client/types/patch_points_boosts_response.rb +0 -74
  540. data/lib/trophy_api_client/types/patch_points_levels_request.rb +0 -7
  541. data/lib/trophy_api_client/types/patch_points_levels_request_item.rb +0 -100
  542. data/lib/trophy_api_client/types/patch_points_levels_request_item_badge.rb +0 -55
  543. data/lib/trophy_api_client/types/patch_points_levels_response.rb +0 -74
  544. data/lib/trophy_api_client/types/patch_points_triggers_request.rb +0 -7
  545. data/lib/trophy_api_client/types/patch_points_triggers_request_item.rb +0 -174
  546. data/lib/trophy_api_client/types/patch_points_triggers_request_item_event_attributes_item.rb +0 -67
  547. data/lib/trophy_api_client/types/patch_points_triggers_request_item_status.rb +0 -9
  548. data/lib/trophy_api_client/types/patch_points_triggers_request_item_time_unit.rb +0 -9
  549. data/lib/trophy_api_client/types/patch_points_triggers_request_item_type.rb +0 -13
  550. data/lib/trophy_api_client/types/patch_points_triggers_request_item_user_attributes_item.rb +0 -67
  551. data/lib/trophy_api_client/types/patch_points_triggers_response.rb +0 -74
  552. data/lib/trophy_api_client/types/points_award.rb +0 -113
  553. data/lib/trophy_api_client/types/points_boost.rb +0 -112
  554. data/lib/trophy_api_client/types/points_boost_rounding.rb +0 -10
  555. data/lib/trophy_api_client/types/points_boost_status.rb +0 -10
  556. data/lib/trophy_api_client/types/points_boost_webhook_payload.rb +0 -149
  557. data/lib/trophy_api_client/types/points_boost_webhook_payload_rounding.rb +0 -10
  558. data/lib/trophy_api_client/types/points_boost_webhook_payload_status.rb +0 -9
  559. data/lib/trophy_api_client/types/points_level.rb +0 -103
  560. data/lib/trophy_api_client/types/points_level_summary_response.rb +0 -7
  561. data/lib/trophy_api_client/types/points_level_summary_response_item.rb +0 -71
  562. data/lib/trophy_api_client/types/points_range.rb +0 -72
  563. data/lib/trophy_api_client/types/points_response.rb +0 -103
  564. data/lib/trophy_api_client/types/points_summary_response.rb +0 -7
  565. data/lib/trophy_api_client/types/points_system_response.rb +0 -107
  566. data/lib/trophy_api_client/types/points_trigger.rb +0 -227
  567. data/lib/trophy_api_client/types/points_trigger_event_attribute.rb +0 -67
  568. data/lib/trophy_api_client/types/points_trigger_event_attributes_item.rb +0 -65
  569. data/lib/trophy_api_client/types/points_trigger_status.rb +0 -10
  570. data/lib/trophy_api_client/types/points_trigger_time_unit.rb +0 -9
  571. data/lib/trophy_api_client/types/points_trigger_type.rb +0 -12
  572. data/lib/trophy_api_client/types/points_trigger_user_attributes_item.rb +0 -65
  573. data/lib/trophy_api_client/types/restore_streaks_response.rb +0 -70
  574. data/lib/trophy_api_client/types/streak_evaluation_mode_preference.rb +0 -11
  575. data/lib/trophy_api_client/types/streak_frequency.rb +0 -9
  576. data/lib/trophy_api_client/types/streak_metric_preference.rb +0 -66
  577. data/lib/trophy_api_client/types/streak_preferences.rb +0 -83
  578. data/lib/trophy_api_client/types/streak_response.rb +0 -170
  579. data/lib/trophy_api_client/types/streak_response_streak_history_item.rb +0 -89
  580. data/lib/trophy_api_client/types/update_attribute_request_item.rb +0 -69
  581. data/lib/trophy_api_client/types/update_attributes_request.rb +0 -7
  582. data/lib/trophy_api_client/types/update_attributes_response.rb +0 -75
  583. data/lib/trophy_api_client/types/update_leaderboard_request_item.rb +0 -179
  584. data/lib/trophy_api_client/types/update_leaderboard_request_item_rank_by.rb +0 -11
  585. data/lib/trophy_api_client/types/update_leaderboard_request_item_run_unit.rb +0 -9
  586. data/lib/trophy_api_client/types/update_leaderboard_request_item_status.rb +0 -12
  587. data/lib/trophy_api_client/types/update_leaderboards_request.rb +0 -7
  588. data/lib/trophy_api_client/types/update_leaderboards_response.rb +0 -75
  589. data/lib/trophy_api_client/types/update_metric_request_item.rb +0 -86
  590. data/lib/trophy_api_client/types/update_metric_request_item_unit_type.rb +0 -9
  591. data/lib/trophy_api_client/types/update_metrics_request.rb +0 -7
  592. data/lib/trophy_api_client/types/update_metrics_response.rb +0 -75
  593. data/lib/trophy_api_client/types/update_points_system_request_item.rb +0 -102
  594. data/lib/trophy_api_client/types/update_points_system_request_item_badge.rb +0 -55
  595. data/lib/trophy_api_client/types/update_points_systems_request.rb +0 -7
  596. data/lib/trophy_api_client/types/update_points_systems_response.rb +0 -74
  597. data/lib/trophy_api_client/types/update_tenant_request_item.rb +0 -75
  598. data/lib/trophy_api_client/types/update_tenants_request.rb +0 -7
  599. data/lib/trophy_api_client/types/update_tenants_response.rb +0 -74
  600. data/lib/trophy_api_client/types/updated_user.rb +0 -108
  601. data/lib/trophy_api_client/types/upserted_user.rb +0 -116
  602. data/lib/trophy_api_client/types/user.rb +0 -141
  603. data/lib/trophy_api_client/types/user_achievement_response.rb +0 -209
  604. data/lib/trophy_api_client/types/user_achievement_with_stats_response.rb +0 -225
  605. data/lib/trophy_api_client/types/user_leaderboard_response.rb +0 -212
  606. data/lib/trophy_api_client/types/user_leaderboard_response_with_history.rb +0 -224
  607. data/lib/trophy_api_client/types/user_preferences_response.rb +0 -80
  608. data/lib/trophy_api_client/types/webhook_user_leaderboard_response.rb +0 -228
  609. data/lib/trophy_api_client/types/webhooks_achievement_completed_payload.rb +0 -84
  610. data/lib/trophy_api_client/types/webhooks_leaderboard_changed_payload.rb +0 -71
  611. data/lib/trophy_api_client/types/webhooks_leaderboard_finished_payload.rb +0 -71
  612. data/lib/trophy_api_client/types/webhooks_leaderboard_rank_changed_payload.rb +0 -85
  613. data/lib/trophy_api_client/types/webhooks_leaderboard_started_payload.rb +0 -71
  614. data/lib/trophy_api_client/types/webhooks_points_boost_finished_payload.rb +0 -79
  615. data/lib/trophy_api_client/types/webhooks_points_boost_started_payload.rb +0 -79
  616. data/lib/trophy_api_client/types/webhooks_points_changed_payload.rb +0 -84
  617. data/lib/trophy_api_client/types/webhooks_points_level_changed_payload.rb +0 -117
  618. data/lib/trophy_api_client/types/webhooks_points_level_changed_payload_points.rb +0 -114
  619. data/lib/trophy_api_client/types/webhooks_streak_extended_payload.rb +0 -84
  620. data/lib/trophy_api_client/types/webhooks_streak_freeze_consumed_payload.rb +0 -85
  621. data/lib/trophy_api_client/types/webhooks_streak_freeze_earned_payload.rb +0 -85
  622. data/lib/trophy_api_client/types/webhooks_streak_lost_payload.rb +0 -78
  623. data/lib/trophy_api_client/types/webhooks_streak_started_payload.rb +0 -84
  624. data/lib/trophy_api_client/types/wrapped_activity.rb +0 -134
  625. data/lib/trophy_api_client/types/wrapped_activity_period.rb +0 -95
  626. data/lib/trophy_api_client/types/wrapped_entire_year.rb +0 -114
  627. data/lib/trophy_api_client/types/wrapped_metric.rb +0 -119
  628. data/lib/trophy_api_client/types/wrapped_metric_by_attribute_value_value.rb +0 -103
  629. data/lib/trophy_api_client/types/wrapped_most_active_day.rb +0 -108
  630. data/lib/trophy_api_client/types/wrapped_most_active_month.rb +0 -108
  631. data/lib/trophy_api_client/types/wrapped_most_active_week.rb +0 -116
  632. data/lib/trophy_api_client/types/wrapped_points.rb +0 -106
  633. data/lib/trophy_api_client/types/wrapped_response.rb +0 -79
  634. data/lib/trophy_api_client/types/wrapped_streak.rb +0 -96
  635. data/lib/trophy_api_client/users/client.rb +0 -1356
  636. data/lib/trophy_api_client/users/types/users_metric_event_summary_response_item.rb +0 -76
  637. data/lib/trophy_api_client/users/types/users_points_event_summary_response_item.rb +0 -76
  638. data/lib/trophy_api_client/version.rb +0 -3
  639. data/lib/types_export.rb +0 -221
@@ -1,424 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../requests"
4
- require_relative "../types/points_summary_response"
5
- require "json"
6
- require_relative "../types/points_system_response"
7
- require_relative "../types/points_boost"
8
- require_relative "../types/points_level"
9
- require_relative "../types/points_level_summary_response"
10
- require "async"
11
-
12
- module TrophyApiClient
13
- class PointsClient
14
- # @return [TrophyApiClient::RequestClient]
15
- attr_reader :request_client
16
-
17
- # @param request_client [TrophyApiClient::RequestClient]
18
- # @return [TrophyApiClient::PointsClient]
19
- def initialize(request_client:)
20
- @request_client = request_client
21
- end
22
-
23
- # Get a breakdown of the number of users with points in each range.
24
- #
25
- # @param key [String] Key of the points system.
26
- # @param user_attributes [String] Optional colon-delimited user attribute filters in the format
27
- # attribute:value,attribute:value. Only users matching ALL specified attributes
28
- # will be included in the points breakdown.
29
- # @param request_options [TrophyApiClient::RequestOptions]
30
- # @return [TrophyApiClient::POINTS_SUMMARY_RESPONSE]
31
- # @example
32
- # api = TrophyApiClient::Client.new(
33
- # base_url: "https://api.example.com",
34
- # environment: TrophyApiClient::Environment::PRODUCTION,
35
- # api_key: "YOUR_API_KEY"
36
- # )
37
- # api.points.summary(key: "points-system-key", user_attributes: "plan-type:premium,region:us-east")
38
- def summary(key:, user_attributes: nil, request_options: nil)
39
- response = @request_client.conn.get do |req|
40
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
41
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
42
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
43
- req.headers = {
44
- **(req.headers || {}),
45
- **@request_client.get_headers,
46
- **(request_options&.additional_headers || {})
47
- }.compact
48
- req.params = {
49
- **(request_options&.additional_query_parameters || {}),
50
- "userAttributes": user_attributes
51
- }.compact
52
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
53
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
54
- end
55
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}/summary"
56
- end
57
- parsed_json = JSON.parse(response.body)
58
- parsed_json&.map do |item|
59
- item = item.to_json
60
- TrophyApiClient::PointsRange.from_json(json_object: item)
61
- end
62
- end
63
-
64
- # Get a points system with its triggers.
65
- #
66
- # @param key [String] Key of the points system.
67
- # @param request_options [TrophyApiClient::RequestOptions]
68
- # @return [TrophyApiClient::PointsSystemResponse]
69
- # @example
70
- # api = TrophyApiClient::Client.new(
71
- # base_url: "https://api.example.com",
72
- # environment: TrophyApiClient::Environment::PRODUCTION,
73
- # api_key: "YOUR_API_KEY"
74
- # )
75
- # api.points.system(key: "points-system-key")
76
- def system(key:, request_options: nil)
77
- response = @request_client.conn.get do |req|
78
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
79
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
80
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
81
- req.headers = {
82
- **(req.headers || {}),
83
- **@request_client.get_headers,
84
- **(request_options&.additional_headers || {})
85
- }.compact
86
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
87
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
88
- end
89
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
90
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
91
- end
92
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}"
93
- end
94
- TrophyApiClient::PointsSystemResponse.from_json(json_object: response.body)
95
- end
96
-
97
- # Get all global boosts for a points system. Finished boosts are excluded by
98
- # default.
99
- #
100
- # @param key [String] Key of the points system.
101
- # @param include_finished [Boolean] When set to 'true', boosts that have finished (past their end date) will be
102
- # included in the response. By default, finished boosts are excluded.
103
- # @param request_options [TrophyApiClient::RequestOptions]
104
- # @return [Array<TrophyApiClient::PointsBoost>]
105
- # @example
106
- # api = TrophyApiClient::Client.new(
107
- # base_url: "https://api.example.com",
108
- # environment: TrophyApiClient::Environment::PRODUCTION,
109
- # api_key: "YOUR_API_KEY"
110
- # )
111
- # api.points.boosts(key: "points-system-key", include_finished: true)
112
- def boosts(key:, include_finished: nil, request_options: nil)
113
- response = @request_client.conn.get do |req|
114
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
115
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
116
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
117
- req.headers = {
118
- **(req.headers || {}),
119
- **@request_client.get_headers,
120
- **(request_options&.additional_headers || {})
121
- }.compact
122
- req.params = {
123
- **(request_options&.additional_query_parameters || {}),
124
- "includeFinished": include_finished
125
- }.compact
126
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
127
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
128
- end
129
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}/boosts"
130
- end
131
- parsed_json = JSON.parse(response.body)
132
- parsed_json&.map do |item|
133
- item = item.to_json
134
- TrophyApiClient::PointsBoost.from_json(json_object: item)
135
- end
136
- end
137
-
138
- # Get all levels for a points system.
139
- #
140
- # @param key [String] Key of the points system.
141
- # @param request_options [TrophyApiClient::RequestOptions]
142
- # @return [Array<TrophyApiClient::PointsLevel>]
143
- # @example
144
- # api = TrophyApiClient::Client.new(
145
- # base_url: "https://api.example.com",
146
- # environment: TrophyApiClient::Environment::PRODUCTION,
147
- # api_key: "YOUR_API_KEY"
148
- # )
149
- # api.points.levels(key: "points-system-key")
150
- def levels(key:, request_options: nil)
151
- response = @request_client.conn.get do |req|
152
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
153
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
154
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
155
- req.headers = {
156
- **(req.headers || {}),
157
- **@request_client.get_headers,
158
- **(request_options&.additional_headers || {})
159
- }.compact
160
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
161
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
162
- end
163
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
164
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
165
- end
166
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}/levels"
167
- end
168
- parsed_json = JSON.parse(response.body)
169
- parsed_json&.map do |item|
170
- item = item.to_json
171
- TrophyApiClient::PointsLevel.from_json(json_object: item)
172
- end
173
- end
174
-
175
- # Get a breakdown of the number of users at each level in a points system.
176
- #
177
- # @param key [String] Key of the points system.
178
- # @param request_options [TrophyApiClient::RequestOptions]
179
- # @return [TrophyApiClient::POINTS_LEVEL_SUMMARY_RESPONSE]
180
- # @example
181
- # api = TrophyApiClient::Client.new(
182
- # base_url: "https://api.example.com",
183
- # environment: TrophyApiClient::Environment::PRODUCTION,
184
- # api_key: "YOUR_API_KEY"
185
- # )
186
- # api.points.level_summary(key: "points-system-key")
187
- def level_summary(key:, request_options: nil)
188
- response = @request_client.conn.get do |req|
189
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
190
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
191
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
192
- req.headers = {
193
- **(req.headers || {}),
194
- **@request_client.get_headers,
195
- **(request_options&.additional_headers || {})
196
- }.compact
197
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
198
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
199
- end
200
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
201
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
202
- end
203
- req.url "#{@request_client.get_url(environment: api,
204
- request_options: request_options)}/points/#{key}/level-summary"
205
- end
206
- parsed_json = JSON.parse(response.body)
207
- parsed_json&.map do |item|
208
- item = item.to_json
209
- TrophyApiClient::PointsLevelSummaryResponseItem.from_json(json_object: item)
210
- end
211
- end
212
- end
213
-
214
- class AsyncPointsClient
215
- # @return [TrophyApiClient::AsyncRequestClient]
216
- attr_reader :request_client
217
-
218
- # @param request_client [TrophyApiClient::AsyncRequestClient]
219
- # @return [TrophyApiClient::AsyncPointsClient]
220
- def initialize(request_client:)
221
- @request_client = request_client
222
- end
223
-
224
- # Get a breakdown of the number of users with points in each range.
225
- #
226
- # @param key [String] Key of the points system.
227
- # @param user_attributes [String] Optional colon-delimited user attribute filters in the format
228
- # attribute:value,attribute:value. Only users matching ALL specified attributes
229
- # will be included in the points breakdown.
230
- # @param request_options [TrophyApiClient::RequestOptions]
231
- # @return [TrophyApiClient::POINTS_SUMMARY_RESPONSE]
232
- # @example
233
- # api = TrophyApiClient::Client.new(
234
- # base_url: "https://api.example.com",
235
- # environment: TrophyApiClient::Environment::PRODUCTION,
236
- # api_key: "YOUR_API_KEY"
237
- # )
238
- # api.points.summary(key: "points-system-key", user_attributes: "plan-type:premium,region:us-east")
239
- def summary(key:, user_attributes: nil, request_options: nil)
240
- Async do
241
- response = @request_client.conn.get do |req|
242
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
243
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
244
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
245
- req.headers = {
246
- **(req.headers || {}),
247
- **@request_client.get_headers,
248
- **(request_options&.additional_headers || {})
249
- }.compact
250
- req.params = {
251
- **(request_options&.additional_query_parameters || {}),
252
- "userAttributes": user_attributes
253
- }.compact
254
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
255
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
256
- end
257
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}/summary"
258
- end
259
- parsed_json = JSON.parse(response.body)
260
- parsed_json&.map do |item|
261
- item = item.to_json
262
- TrophyApiClient::PointsRange.from_json(json_object: item)
263
- end
264
- end
265
- end
266
-
267
- # Get a points system with its triggers.
268
- #
269
- # @param key [String] Key of the points system.
270
- # @param request_options [TrophyApiClient::RequestOptions]
271
- # @return [TrophyApiClient::PointsSystemResponse]
272
- # @example
273
- # api = TrophyApiClient::Client.new(
274
- # base_url: "https://api.example.com",
275
- # environment: TrophyApiClient::Environment::PRODUCTION,
276
- # api_key: "YOUR_API_KEY"
277
- # )
278
- # api.points.system(key: "points-system-key")
279
- def system(key:, request_options: nil)
280
- Async do
281
- response = @request_client.conn.get do |req|
282
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
283
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
284
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
285
- req.headers = {
286
- **(req.headers || {}),
287
- **@request_client.get_headers,
288
- **(request_options&.additional_headers || {})
289
- }.compact
290
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
291
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
292
- end
293
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
294
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
295
- end
296
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}"
297
- end
298
- TrophyApiClient::PointsSystemResponse.from_json(json_object: response.body)
299
- end
300
- end
301
-
302
- # Get all global boosts for a points system. Finished boosts are excluded by
303
- # default.
304
- #
305
- # @param key [String] Key of the points system.
306
- # @param include_finished [Boolean] When set to 'true', boosts that have finished (past their end date) will be
307
- # included in the response. By default, finished boosts are excluded.
308
- # @param request_options [TrophyApiClient::RequestOptions]
309
- # @return [Array<TrophyApiClient::PointsBoost>]
310
- # @example
311
- # api = TrophyApiClient::Client.new(
312
- # base_url: "https://api.example.com",
313
- # environment: TrophyApiClient::Environment::PRODUCTION,
314
- # api_key: "YOUR_API_KEY"
315
- # )
316
- # api.points.boosts(key: "points-system-key", include_finished: true)
317
- def boosts(key:, include_finished: nil, request_options: nil)
318
- Async do
319
- response = @request_client.conn.get do |req|
320
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
321
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
322
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
323
- req.headers = {
324
- **(req.headers || {}),
325
- **@request_client.get_headers,
326
- **(request_options&.additional_headers || {})
327
- }.compact
328
- req.params = {
329
- **(request_options&.additional_query_parameters || {}),
330
- "includeFinished": include_finished
331
- }.compact
332
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
333
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
334
- end
335
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}/boosts"
336
- end
337
- parsed_json = JSON.parse(response.body)
338
- parsed_json&.map do |item|
339
- item = item.to_json
340
- TrophyApiClient::PointsBoost.from_json(json_object: item)
341
- end
342
- end
343
- end
344
-
345
- # Get all levels for a points system.
346
- #
347
- # @param key [String] Key of the points system.
348
- # @param request_options [TrophyApiClient::RequestOptions]
349
- # @return [Array<TrophyApiClient::PointsLevel>]
350
- # @example
351
- # api = TrophyApiClient::Client.new(
352
- # base_url: "https://api.example.com",
353
- # environment: TrophyApiClient::Environment::PRODUCTION,
354
- # api_key: "YOUR_API_KEY"
355
- # )
356
- # api.points.levels(key: "points-system-key")
357
- def levels(key:, request_options: nil)
358
- Async do
359
- response = @request_client.conn.get do |req|
360
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
361
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
362
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
363
- req.headers = {
364
- **(req.headers || {}),
365
- **@request_client.get_headers,
366
- **(request_options&.additional_headers || {})
367
- }.compact
368
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
369
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
370
- end
371
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
372
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
373
- end
374
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/points/#{key}/levels"
375
- end
376
- parsed_json = JSON.parse(response.body)
377
- parsed_json&.map do |item|
378
- item = item.to_json
379
- TrophyApiClient::PointsLevel.from_json(json_object: item)
380
- end
381
- end
382
- end
383
-
384
- # Get a breakdown of the number of users at each level in a points system.
385
- #
386
- # @param key [String] Key of the points system.
387
- # @param request_options [TrophyApiClient::RequestOptions]
388
- # @return [TrophyApiClient::POINTS_LEVEL_SUMMARY_RESPONSE]
389
- # @example
390
- # api = TrophyApiClient::Client.new(
391
- # base_url: "https://api.example.com",
392
- # environment: TrophyApiClient::Environment::PRODUCTION,
393
- # api_key: "YOUR_API_KEY"
394
- # )
395
- # api.points.level_summary(key: "points-system-key")
396
- def level_summary(key:, request_options: nil)
397
- Async do
398
- response = @request_client.conn.get do |req|
399
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
400
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
401
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
402
- req.headers = {
403
- **(req.headers || {}),
404
- **@request_client.get_headers,
405
- **(request_options&.additional_headers || {})
406
- }.compact
407
- unless request_options.nil? || request_options&.additional_query_parameters.nil?
408
- req.params = { **(request_options&.additional_query_parameters || {}) }.compact
409
- end
410
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
411
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
412
- end
413
- req.url "#{@request_client.get_url(environment: api,
414
- request_options: request_options)}/points/#{key}/level-summary"
415
- end
416
- parsed_json = JSON.parse(response.body)
417
- parsed_json&.map do |item|
418
- item = item.to_json
419
- TrophyApiClient::PointsLevelSummaryResponseItem.from_json(json_object: item)
420
- end
421
- end
422
- end
423
- end
424
- end
@@ -1,104 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "../../requests"
4
- require_relative "../types/bulk_streak_response"
5
- require "json"
6
- require "async"
7
-
8
- module TrophyApiClient
9
- class StreaksClient
10
- # @return [TrophyApiClient::RequestClient]
11
- attr_reader :request_client
12
-
13
- # @param request_client [TrophyApiClient::RequestClient]
14
- # @return [TrophyApiClient::StreaksClient]
15
- def initialize(request_client:)
16
- @request_client = request_client
17
- end
18
-
19
- # Get the streak lengths of a list of users, ranked by streak length from longest
20
- # to shortest.
21
- #
22
- # @param user_ids [String] A list of up to 100 user IDs.
23
- # @param request_options [TrophyApiClient::RequestOptions]
24
- # @return [TrophyApiClient::BULK_STREAK_RESPONSE]
25
- # @example
26
- # api = TrophyApiClient::Client.new(
27
- # base_url: "https://api.example.com",
28
- # environment: TrophyApiClient::Environment::PRODUCTION,
29
- # api_key: "YOUR_API_KEY"
30
- # )
31
- # api.streaks.list
32
- def list(user_ids: nil, request_options: nil)
33
- response = @request_client.conn.get do |req|
34
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
35
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
36
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
37
- req.headers = {
38
- **(req.headers || {}),
39
- **@request_client.get_headers,
40
- **(request_options&.additional_headers || {})
41
- }.compact
42
- req.params = { **(request_options&.additional_query_parameters || {}), "userIds": user_ids }.compact
43
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
44
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
45
- end
46
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/streaks"
47
- end
48
- parsed_json = JSON.parse(response.body)
49
- parsed_json&.map do |item|
50
- item = item.to_json
51
- TrophyApiClient::BulkStreakResponseItem.from_json(json_object: item)
52
- end
53
- end
54
- end
55
-
56
- class AsyncStreaksClient
57
- # @return [TrophyApiClient::AsyncRequestClient]
58
- attr_reader :request_client
59
-
60
- # @param request_client [TrophyApiClient::AsyncRequestClient]
61
- # @return [TrophyApiClient::AsyncStreaksClient]
62
- def initialize(request_client:)
63
- @request_client = request_client
64
- end
65
-
66
- # Get the streak lengths of a list of users, ranked by streak length from longest
67
- # to shortest.
68
- #
69
- # @param user_ids [String] A list of up to 100 user IDs.
70
- # @param request_options [TrophyApiClient::RequestOptions]
71
- # @return [TrophyApiClient::BULK_STREAK_RESPONSE]
72
- # @example
73
- # api = TrophyApiClient::Client.new(
74
- # base_url: "https://api.example.com",
75
- # environment: TrophyApiClient::Environment::PRODUCTION,
76
- # api_key: "YOUR_API_KEY"
77
- # )
78
- # api.streaks.list
79
- def list(user_ids: nil, request_options: nil)
80
- Async do
81
- response = @request_client.conn.get do |req|
82
- req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
83
- req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
84
- req.headers["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
85
- req.headers = {
86
- **(req.headers || {}),
87
- **@request_client.get_headers,
88
- **(request_options&.additional_headers || {})
89
- }.compact
90
- req.params = { **(request_options&.additional_query_parameters || {}), "userIds": user_ids }.compact
91
- unless request_options.nil? || request_options&.additional_body_parameters.nil?
92
- req.body = { **(request_options&.additional_body_parameters || {}) }.compact
93
- end
94
- req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/streaks"
95
- end
96
- parsed_json = JSON.parse(response.body)
97
- parsed_json&.map do |item|
98
- item = item.to_json
99
- TrophyApiClient::BulkStreakResponseItem.from_json(json_object: item)
100
- end
101
- end
102
- end
103
- end
104
- end
@@ -1,83 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative "user_achievement_response"
4
- require "ostruct"
5
- require "json"
6
-
7
- module TrophyApiClient
8
- class AchievementCompletionResponse
9
- # @return [String] The unique ID of the completion.
10
- attr_reader :completion_id
11
- # @return [TrophyApiClient::UserAchievementResponse]
12
- attr_reader :achievement
13
- # @return [Hash{String => TrophyApiClient::MetricEventPointsResponse}] A map of points systems by key that were affected by this achievement
14
- # completion.
15
- attr_reader :points
16
- # @return [OpenStruct] Additional properties unmapped to the current class definition
17
- attr_reader :additional_properties
18
- # @return [Object]
19
- attr_reader :_field_set
20
- protected :_field_set
21
-
22
- OMIT = Object.new
23
-
24
- # @param completion_id [String] The unique ID of the completion.
25
- # @param achievement [TrophyApiClient::UserAchievementResponse]
26
- # @param points [Hash{String => TrophyApiClient::MetricEventPointsResponse}] A map of points systems by key that were affected by this achievement
27
- # completion.
28
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
29
- # @return [TrophyApiClient::AchievementCompletionResponse]
30
- def initialize(completion_id:, achievement:, points:, additional_properties: nil)
31
- @completion_id = completion_id
32
- @achievement = achievement
33
- @points = points
34
- @additional_properties = additional_properties
35
- @_field_set = { "completionId": completion_id, "achievement": achievement, "points": points }
36
- end
37
-
38
- # Deserialize a JSON object to an instance of AchievementCompletionResponse
39
- #
40
- # @param json_object [String]
41
- # @return [TrophyApiClient::AchievementCompletionResponse]
42
- def self.from_json(json_object:)
43
- struct = JSON.parse(json_object, object_class: OpenStruct)
44
- parsed_json = JSON.parse(json_object)
45
- completion_id = parsed_json["completionId"]
46
- if parsed_json["achievement"].nil?
47
- achievement = nil
48
- else
49
- achievement = parsed_json["achievement"].to_json
50
- achievement = TrophyApiClient::UserAchievementResponse.from_json(json_object: achievement)
51
- end
52
- points = parsed_json["points"]&.transform_values do |value|
53
- value = value.to_json
54
- TrophyApiClient::MetricEventPointsResponse.from_json(json_object: value)
55
- end
56
- new(
57
- completion_id: completion_id,
58
- achievement: achievement,
59
- points: points,
60
- additional_properties: struct
61
- )
62
- end
63
-
64
- # Serialize an instance of AchievementCompletionResponse to a JSON object
65
- #
66
- # @return [String]
67
- def to_json(*_args)
68
- @_field_set&.to_json
69
- end
70
-
71
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
72
- # hash and check each fields type against the current object's property
73
- # definitions.
74
- #
75
- # @param obj [Object]
76
- # @return [Void]
77
- def self.validate_raw(obj:)
78
- obj.completion_id.is_a?(String) != false || raise("Passed value for field obj.completion_id is not the expected type, validation failed.")
79
- TrophyApiClient::UserAchievementResponse.validate_raw(obj: obj.achievement)
80
- obj.points.is_a?(Hash) != false || raise("Passed value for field obj.points is not the expected type, validation failed.")
81
- end
82
- end
83
- end