believe 0.7.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 (551) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +125 -0
  4. data/README.md +291 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/believe/client.rb +194 -0
  7. data/lib/believe/errors.rb +228 -0
  8. data/lib/believe/file_part.rb +58 -0
  9. data/lib/believe/internal/skip_limit_page.rb +90 -0
  10. data/lib/believe/internal/transport/base_client.rb +573 -0
  11. data/lib/believe/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/believe/internal/type/array_of.rb +168 -0
  13. data/lib/believe/internal/type/base_model.rb +531 -0
  14. data/lib/believe/internal/type/base_page.rb +55 -0
  15. data/lib/believe/internal/type/boolean.rb +77 -0
  16. data/lib/believe/internal/type/converter.rb +327 -0
  17. data/lib/believe/internal/type/enum.rb +156 -0
  18. data/lib/believe/internal/type/file_input.rb +111 -0
  19. data/lib/believe/internal/type/hash_of.rb +188 -0
  20. data/lib/believe/internal/type/request_parameters.rb +42 -0
  21. data/lib/believe/internal/type/union.rb +262 -0
  22. data/lib/believe/internal/type/unknown.rb +81 -0
  23. data/lib/believe/internal/util.rb +966 -0
  24. data/lib/believe/internal.rb +20 -0
  25. data/lib/believe/models/believe_submit_params.rb +63 -0
  26. data/lib/believe/models/believe_submit_response.rb +51 -0
  27. data/lib/believe/models/biscuit.rb +76 -0
  28. data/lib/believe/models/biscuit_get_fresh_params.rb +14 -0
  29. data/lib/believe/models/biscuit_list_params.rb +30 -0
  30. data/lib/believe/models/biscuit_retrieve_params.rb +20 -0
  31. data/lib/believe/models/character.rb +123 -0
  32. data/lib/believe/models/character_create_params.rb +130 -0
  33. data/lib/believe/models/character_delete_params.rb +20 -0
  34. data/lib/believe/models/character_get_quotes_params.rb +20 -0
  35. data/lib/believe/models/character_get_quotes_response.rb +8 -0
  36. data/lib/believe/models/character_list_params.rb +54 -0
  37. data/lib/believe/models/character_retrieve_params.rb +20 -0
  38. data/lib/believe/models/character_role.rb +24 -0
  39. data/lib/believe/models/character_update_params.rb +125 -0
  40. data/lib/believe/models/client/w_test_params.rb +16 -0
  41. data/lib/believe/models/client_get_welcome_params.rb +14 -0
  42. data/lib/believe/models/coach.rb +87 -0
  43. data/lib/believe/models/coach_specialty.rb +19 -0
  44. data/lib/believe/models/coaching/coaching_principle.rb +63 -0
  45. data/lib/believe/models/coaching/principle_get_random_params.rb +16 -0
  46. data/lib/believe/models/coaching/principle_list_params.rb +32 -0
  47. data/lib/believe/models/coaching/principle_retrieve_params.rb +22 -0
  48. data/lib/believe/models/conflict_resolve_params.rb +61 -0
  49. data/lib/believe/models/conflict_resolve_response.rb +59 -0
  50. data/lib/believe/models/emotional_stats.rb +50 -0
  51. data/lib/believe/models/episode.rb +139 -0
  52. data/lib/believe/models/episode_create_params.rb +134 -0
  53. data/lib/believe/models/episode_delete_params.rb +20 -0
  54. data/lib/believe/models/episode_get_wisdom_params.rb +20 -0
  55. data/lib/believe/models/episode_get_wisdom_response.rb +8 -0
  56. data/lib/believe/models/episode_list_params.rb +46 -0
  57. data/lib/believe/models/episode_retrieve_params.rb +20 -0
  58. data/lib/believe/models/episode_update_params.rb +110 -0
  59. data/lib/believe/models/equipment_manager.rb +78 -0
  60. data/lib/believe/models/geo_location.rb +26 -0
  61. data/lib/believe/models/get_welcome_response.rb +8 -0
  62. data/lib/believe/models/growth_arc.rb +50 -0
  63. data/lib/believe/models/health_check_params.rb +14 -0
  64. data/lib/believe/models/health_check_response.rb +8 -0
  65. data/lib/believe/models/league.rb +22 -0
  66. data/lib/believe/models/match.rb +139 -0
  67. data/lib/believe/models/match_completed_webhook_event.rb +178 -0
  68. data/lib/believe/models/match_create_params.rb +146 -0
  69. data/lib/believe/models/match_delete_params.rb +20 -0
  70. data/lib/believe/models/match_get_lesson_params.rb +20 -0
  71. data/lib/believe/models/match_get_lesson_response.rb +8 -0
  72. data/lib/believe/models/match_get_turning_points_params.rb +20 -0
  73. data/lib/believe/models/match_get_turning_points_response.rb +9 -0
  74. data/lib/believe/models/match_list_params.rb +54 -0
  75. data/lib/believe/models/match_result.rb +18 -0
  76. data/lib/believe/models/match_retrieve_params.rb +20 -0
  77. data/lib/believe/models/match_stream_live_params.rb +46 -0
  78. data/lib/believe/models/match_type.rb +19 -0
  79. data/lib/believe/models/match_update_params.rb +139 -0
  80. data/lib/believe/models/matches/commentary_stream_params.rb +22 -0
  81. data/lib/believe/models/matches/commentary_stream_response.rb +10 -0
  82. data/lib/believe/models/medical_specialty.rb +19 -0
  83. data/lib/believe/models/medical_staff.rb +86 -0
  84. data/lib/believe/models/paginated_response.rb +62 -0
  85. data/lib/believe/models/paginated_response_quote.rb +62 -0
  86. data/lib/believe/models/pep_talk_retrieve_params.rb +22 -0
  87. data/lib/believe/models/pep_talk_retrieve_response.rb +69 -0
  88. data/lib/believe/models/player.rb +103 -0
  89. data/lib/believe/models/position.rb +18 -0
  90. data/lib/believe/models/press_simulate_params.rb +38 -0
  91. data/lib/believe/models/press_simulate_response.rb +51 -0
  92. data/lib/believe/models/purchase_method.rb +18 -0
  93. data/lib/believe/models/quote.rb +107 -0
  94. data/lib/believe/models/quote_create_params.rb +102 -0
  95. data/lib/believe/models/quote_delete_params.rb +20 -0
  96. data/lib/believe/models/quote_get_random_params.rb +38 -0
  97. data/lib/believe/models/quote_list_by_character_params.rb +37 -0
  98. data/lib/believe/models/quote_list_by_theme_params.rb +38 -0
  99. data/lib/believe/models/quote_list_params.rb +70 -0
  100. data/lib/believe/models/quote_moment.rb +25 -0
  101. data/lib/believe/models/quote_retrieve_params.rb +20 -0
  102. data/lib/believe/models/quote_theme.rb +45 -0
  103. data/lib/believe/models/quote_update_params.rb +102 -0
  104. data/lib/believe/models/reframe_transform_negative_thoughts_params.rb +30 -0
  105. data/lib/believe/models/reframe_transform_negative_thoughts_response.rb +51 -0
  106. data/lib/believe/models/registered_webhook.rb +70 -0
  107. data/lib/believe/models/stream_test_connection_params.rb +14 -0
  108. data/lib/believe/models/stream_test_connection_response.rb +8 -0
  109. data/lib/believe/models/team.rb +155 -0
  110. data/lib/believe/models/team_create_params.rb +162 -0
  111. data/lib/believe/models/team_delete_params.rb +20 -0
  112. data/lib/believe/models/team_get_culture_params.rb +20 -0
  113. data/lib/believe/models/team_get_culture_response.rb +8 -0
  114. data/lib/believe/models/team_get_rivals_params.rb +20 -0
  115. data/lib/believe/models/team_get_rivals_response.rb +8 -0
  116. data/lib/believe/models/team_list_logos_params.rb +20 -0
  117. data/lib/believe/models/team_list_logos_response.rb +8 -0
  118. data/lib/believe/models/team_list_params.rb +46 -0
  119. data/lib/believe/models/team_member_create_params.rb +345 -0
  120. data/lib/believe/models/team_member_create_response.rb +29 -0
  121. data/lib/believe/models/team_member_delete_params.rb +20 -0
  122. data/lib/believe/models/team_member_list_coaches_params.rb +46 -0
  123. data/lib/believe/models/team_member_list_params.rb +59 -0
  124. data/lib/believe/models/team_member_list_players_params.rb +46 -0
  125. data/lib/believe/models/team_member_list_response.rb +29 -0
  126. data/lib/believe/models/team_member_list_staff_params.rb +38 -0
  127. data/lib/believe/models/team_member_list_staff_response.rb +21 -0
  128. data/lib/believe/models/team_member_retrieve_params.rb +20 -0
  129. data/lib/believe/models/team_member_retrieve_response.rb +29 -0
  130. data/lib/believe/models/team_member_transferred_webhook_event.rb +185 -0
  131. data/lib/believe/models/team_member_update_params.rb +216 -0
  132. data/lib/believe/models/team_member_update_response.rb +29 -0
  133. data/lib/believe/models/team_retrieve_params.rb +20 -0
  134. data/lib/believe/models/team_update_params.rb +154 -0
  135. data/lib/believe/models/team_values.rb +34 -0
  136. data/lib/believe/models/teams/file_upload.rb +50 -0
  137. data/lib/believe/models/teams/logo_delete_params.rb +28 -0
  138. data/lib/believe/models/teams/logo_download_params.rb +28 -0
  139. data/lib/believe/models/teams/logo_download_response.rb +10 -0
  140. data/lib/believe/models/teams/logo_upload_params.rb +31 -0
  141. data/lib/believe/models/ticket_sale.rb +115 -0
  142. data/lib/believe/models/ticket_sale_create_params.rb +110 -0
  143. data/lib/believe/models/ticket_sale_delete_params.rb +20 -0
  144. data/lib/believe/models/ticket_sale_list_params.rb +62 -0
  145. data/lib/believe/models/ticket_sale_retrieve_params.rb +20 -0
  146. data/lib/believe/models/ticket_sale_update_params.rb +106 -0
  147. data/lib/believe/models/turning_point.rb +42 -0
  148. data/lib/believe/models/unwrap_webhook_event.rb +19 -0
  149. data/lib/believe/models/version_retrieve_params.rb +14 -0
  150. data/lib/believe/models/version_retrieve_response.rb +8 -0
  151. data/lib/believe/models/webhook_create_params.rb +50 -0
  152. data/lib/believe/models/webhook_create_response.rb +35 -0
  153. data/lib/believe/models/webhook_delete_params.rb +20 -0
  154. data/lib/believe/models/webhook_delete_response.rb +8 -0
  155. data/lib/believe/models/webhook_list_params.rb +14 -0
  156. data/lib/believe/models/webhook_list_response.rb +8 -0
  157. data/lib/believe/models/webhook_retrieve_params.rb +20 -0
  158. data/lib/believe/models/webhook_trigger_event_params.rb +383 -0
  159. data/lib/believe/models/webhook_trigger_event_response.rb +118 -0
  160. data/lib/believe/models/webhook_unwrap_params.rb +14 -0
  161. data/lib/believe/models.rb +245 -0
  162. data/lib/believe/request_options.rb +77 -0
  163. data/lib/believe/resources/believe.rb +43 -0
  164. data/lib/believe/resources/biscuits.rb +79 -0
  165. data/lib/believe/resources/characters.rb +198 -0
  166. data/lib/believe/resources/client/ws.rb +44 -0
  167. data/lib/believe/resources/client.rb +20 -0
  168. data/lib/believe/resources/coaching/principles.rb +80 -0
  169. data/lib/believe/resources/coaching.rb +19 -0
  170. data/lib/believe/resources/conflicts.rb +43 -0
  171. data/lib/believe/resources/episodes.rb +189 -0
  172. data/lib/believe/resources/health.rb +32 -0
  173. data/lib/believe/resources/matches/commentary.rb +37 -0
  174. data/lib/believe/resources/matches.rb +288 -0
  175. data/lib/believe/resources/pep_talk.rb +40 -0
  176. data/lib/believe/resources/press.rb +41 -0
  177. data/lib/believe/resources/quotes.rb +258 -0
  178. data/lib/believe/resources/reframe.rb +39 -0
  179. data/lib/believe/resources/stream.rb +33 -0
  180. data/lib/believe/resources/team_members.rb +267 -0
  181. data/lib/believe/resources/teams/logo.rb +92 -0
  182. data/lib/believe/resources/teams.rb +250 -0
  183. data/lib/believe/resources/ticket_sales.rb +179 -0
  184. data/lib/believe/resources/version.rb +32 -0
  185. data/lib/believe/resources/webhooks.rb +177 -0
  186. data/lib/believe/version.rb +5 -0
  187. data/lib/believe.rb +215 -0
  188. data/manifest.yaml +17 -0
  189. data/rbi/believe/client.rbi +128 -0
  190. data/rbi/believe/errors.rbi +205 -0
  191. data/rbi/believe/file_part.rbi +37 -0
  192. data/rbi/believe/internal/skip_limit_page.rbi +25 -0
  193. data/rbi/believe/internal/transport/base_client.rbi +298 -0
  194. data/rbi/believe/internal/transport/pooled_net_requester.rbi +83 -0
  195. data/rbi/believe/internal/type/array_of.rbi +104 -0
  196. data/rbi/believe/internal/type/base_model.rbi +308 -0
  197. data/rbi/believe/internal/type/base_page.rbi +42 -0
  198. data/rbi/believe/internal/type/boolean.rbi +58 -0
  199. data/rbi/believe/internal/type/converter.rbi +216 -0
  200. data/rbi/believe/internal/type/enum.rbi +82 -0
  201. data/rbi/believe/internal/type/file_input.rbi +59 -0
  202. data/rbi/believe/internal/type/hash_of.rbi +104 -0
  203. data/rbi/believe/internal/type/request_parameters.rbi +29 -0
  204. data/rbi/believe/internal/type/union.rbi +128 -0
  205. data/rbi/believe/internal/type/unknown.rbi +58 -0
  206. data/rbi/believe/internal/util.rbi +515 -0
  207. data/rbi/believe/internal.rbi +18 -0
  208. data/rbi/believe/models/believe_submit_params.rbi +134 -0
  209. data/rbi/believe/models/believe_submit_response.rbi +73 -0
  210. data/rbi/believe/models/biscuit.rbi +101 -0
  211. data/rbi/believe/models/biscuit_get_fresh_params.rbi +27 -0
  212. data/rbi/believe/models/biscuit_list_params.rbi +57 -0
  213. data/rbi/believe/models/biscuit_retrieve_params.rbi +35 -0
  214. data/rbi/believe/models/character.rbi +151 -0
  215. data/rbi/believe/models/character_create_params.rbi +169 -0
  216. data/rbi/believe/models/character_delete_params.rbi +35 -0
  217. data/rbi/believe/models/character_get_quotes_params.rbi +38 -0
  218. data/rbi/believe/models/character_get_quotes_response.rbi +11 -0
  219. data/rbi/believe/models/character_list_params.rbi +81 -0
  220. data/rbi/believe/models/character_retrieve_params.rbi +38 -0
  221. data/rbi/believe/models/character_role.rbi +28 -0
  222. data/rbi/believe/models/character_update_params.rbi +150 -0
  223. data/rbi/believe/models/client/w_test_params.rbi +32 -0
  224. data/rbi/believe/models/client_get_welcome_params.rbi +27 -0
  225. data/rbi/believe/models/coach.rbi +115 -0
  226. data/rbi/believe/models/coach_specialty.rbi +29 -0
  227. data/rbi/believe/models/coaching/coaching_principle.rbi +85 -0
  228. data/rbi/believe/models/coaching/principle_get_random_params.rbi +32 -0
  229. data/rbi/believe/models/coaching/principle_list_params.rbi +62 -0
  230. data/rbi/believe/models/coaching/principle_retrieve_params.rbi +40 -0
  231. data/rbi/believe/models/conflict_resolve_params.rbi +121 -0
  232. data/rbi/believe/models/conflict_resolve_response.rbi +81 -0
  233. data/rbi/believe/models/emotional_stats.rbi +70 -0
  234. data/rbi/believe/models/episode.rbi +159 -0
  235. data/rbi/believe/models/episode_create_params.rbi +158 -0
  236. data/rbi/believe/models/episode_delete_params.rbi +35 -0
  237. data/rbi/believe/models/episode_get_wisdom_params.rbi +35 -0
  238. data/rbi/believe/models/episode_get_wisdom_response.rbi +11 -0
  239. data/rbi/believe/models/episode_list_params.rbi +73 -0
  240. data/rbi/believe/models/episode_retrieve_params.rbi +35 -0
  241. data/rbi/believe/models/episode_update_params.rbi +131 -0
  242. data/rbi/believe/models/equipment_manager.rbi +128 -0
  243. data/rbi/believe/models/geo_location.rbi +36 -0
  244. data/rbi/believe/models/get_welcome_response.rbi +7 -0
  245. data/rbi/believe/models/growth_arc.rbi +70 -0
  246. data/rbi/believe/models/health_check_params.rbi +27 -0
  247. data/rbi/believe/models/health_check_response.rbi +8 -0
  248. data/rbi/believe/models/league.rbi +26 -0
  249. data/rbi/believe/models/match.rbi +170 -0
  250. data/rbi/believe/models/match_completed_webhook_event.rbi +315 -0
  251. data/rbi/believe/models/match_create_params.rbi +192 -0
  252. data/rbi/believe/models/match_delete_params.rbi +35 -0
  253. data/rbi/believe/models/match_get_lesson_params.rbi +35 -0
  254. data/rbi/believe/models/match_get_lesson_response.rbi +11 -0
  255. data/rbi/believe/models/match_get_turning_points_params.rbi +38 -0
  256. data/rbi/believe/models/match_get_turning_points_response.rbi +13 -0
  257. data/rbi/believe/models/match_list_params.rbi +81 -0
  258. data/rbi/believe/models/match_result.rbi +22 -0
  259. data/rbi/believe/models/match_retrieve_params.rbi +35 -0
  260. data/rbi/believe/models/match_stream_live_params.rbi +79 -0
  261. data/rbi/believe/models/match_type.rbi +23 -0
  262. data/rbi/believe/models/match_update_params.rbi +157 -0
  263. data/rbi/believe/models/matches/commentary_stream_params.rbi +40 -0
  264. data/rbi/believe/models/matches/commentary_stream_response.rbi +10 -0
  265. data/rbi/believe/models/medical_specialty.rbi +30 -0
  266. data/rbi/believe/models/medical_staff.rbi +127 -0
  267. data/rbi/believe/models/paginated_response.rbi +77 -0
  268. data/rbi/believe/models/paginated_response_quote.rbi +77 -0
  269. data/rbi/believe/models/pep_talk_retrieve_params.rbi +43 -0
  270. data/rbi/believe/models/pep_talk_retrieve_response.rbi +114 -0
  271. data/rbi/believe/models/player.rbi +139 -0
  272. data/rbi/believe/models/position.rbi +22 -0
  273. data/rbi/believe/models/press_simulate_params.rbi +62 -0
  274. data/rbi/believe/models/press_simulate_response.rbi +73 -0
  275. data/rbi/believe/models/purchase_method.rbi +24 -0
  276. data/rbi/believe/models/quote.rbi +135 -0
  277. data/rbi/believe/models/quote_create_params.rbi +134 -0
  278. data/rbi/believe/models/quote_delete_params.rbi +35 -0
  279. data/rbi/believe/models/quote_get_random_params.rbi +59 -0
  280. data/rbi/believe/models/quote_list_by_character_params.rbi +66 -0
  281. data/rbi/believe/models/quote_list_by_theme_params.rbi +65 -0
  282. data/rbi/believe/models/quote_list_params.rbi +97 -0
  283. data/rbi/believe/models/quote_moment.rbi +33 -0
  284. data/rbi/believe/models/quote_retrieve_params.rbi +35 -0
  285. data/rbi/believe/models/quote_theme.rbi +51 -0
  286. data/rbi/believe/models/quote_update_params.rbi +113 -0
  287. data/rbi/believe/models/reframe_transform_negative_thoughts_params.rbi +57 -0
  288. data/rbi/believe/models/reframe_transform_negative_thoughts_response.rbi +73 -0
  289. data/rbi/believe/models/registered_webhook.rbi +111 -0
  290. data/rbi/believe/models/stream_test_connection_params.rbi +30 -0
  291. data/rbi/believe/models/stream_test_connection_response.rbi +8 -0
  292. data/rbi/believe/models/team.rbi +186 -0
  293. data/rbi/believe/models/team_create_params.rbi +206 -0
  294. data/rbi/believe/models/team_delete_params.rbi +35 -0
  295. data/rbi/believe/models/team_get_culture_params.rbi +35 -0
  296. data/rbi/believe/models/team_get_culture_response.rbi +11 -0
  297. data/rbi/believe/models/team_get_rivals_params.rbi +35 -0
  298. data/rbi/believe/models/team_get_rivals_response.rbi +11 -0
  299. data/rbi/believe/models/team_list_logos_params.rbi +35 -0
  300. data/rbi/believe/models/team_list_logos_response.rbi +11 -0
  301. data/rbi/believe/models/team_list_params.rbi +73 -0
  302. data/rbi/believe/models/team_member_create_params.rbi +636 -0
  303. data/rbi/believe/models/team_member_create_response.rbi +28 -0
  304. data/rbi/believe/models/team_member_delete_params.rbi +35 -0
  305. data/rbi/believe/models/team_member_list_coaches_params.rbi +76 -0
  306. data/rbi/believe/models/team_member_list_params.rbi +119 -0
  307. data/rbi/believe/models/team_member_list_players_params.rbi +76 -0
  308. data/rbi/believe/models/team_member_list_response.rbi +28 -0
  309. data/rbi/believe/models/team_member_list_staff_params.rbi +68 -0
  310. data/rbi/believe/models/team_member_list_staff_response.rbi +23 -0
  311. data/rbi/believe/models/team_member_retrieve_params.rbi +38 -0
  312. data/rbi/believe/models/team_member_retrieve_response.rbi +28 -0
  313. data/rbi/believe/models/team_member_transferred_webhook_event.rbi +325 -0
  314. data/rbi/believe/models/team_member_update_params.rbi +337 -0
  315. data/rbi/believe/models/team_member_update_response.rbi +28 -0
  316. data/rbi/believe/models/team_retrieve_params.rbi +35 -0
  317. data/rbi/believe/models/team_update_params.rbi +177 -0
  318. data/rbi/believe/models/team_values.rbi +54 -0
  319. data/rbi/believe/models/teams/file_upload.rbi +68 -0
  320. data/rbi/believe/models/teams/logo_delete_params.rbi +48 -0
  321. data/rbi/believe/models/teams/logo_download_params.rbi +48 -0
  322. data/rbi/believe/models/teams/logo_download_response.rbi +10 -0
  323. data/rbi/believe/models/teams/logo_upload_params.rbi +54 -0
  324. data/rbi/believe/models/ticket_sale.rbi +134 -0
  325. data/rbi/believe/models/ticket_sale_create_params.rbi +131 -0
  326. data/rbi/believe/models/ticket_sale_delete_params.rbi +35 -0
  327. data/rbi/believe/models/ticket_sale_list_params.rbi +89 -0
  328. data/rbi/believe/models/ticket_sale_retrieve_params.rbi +38 -0
  329. data/rbi/believe/models/ticket_sale_update_params.rbi +115 -0
  330. data/rbi/believe/models/turning_point.rbi +62 -0
  331. data/rbi/believe/models/unwrap_webhook_event.rbi +24 -0
  332. data/rbi/believe/models/version_retrieve_params.rbi +27 -0
  333. data/rbi/believe/models/version_retrieve_response.rbi +8 -0
  334. data/rbi/believe/models/webhook_create_params.rbi +100 -0
  335. data/rbi/believe/models/webhook_create_response.rbi +66 -0
  336. data/rbi/believe/models/webhook_delete_params.rbi +35 -0
  337. data/rbi/believe/models/webhook_delete_response.rbi +11 -0
  338. data/rbi/believe/models/webhook_list_params.rbi +27 -0
  339. data/rbi/believe/models/webhook_list_response.rbi +11 -0
  340. data/rbi/believe/models/webhook_retrieve_params.rbi +35 -0
  341. data/rbi/believe/models/webhook_trigger_event_params.rbi +771 -0
  342. data/rbi/believe/models/webhook_trigger_event_response.rbi +200 -0
  343. data/rbi/believe/models/webhook_unwrap_params.rbi +27 -0
  344. data/rbi/believe/models.rbi +209 -0
  345. data/rbi/believe/request_options.rbi +59 -0
  346. data/rbi/believe/resources/believe.rbi +37 -0
  347. data/rbi/believe/resources/biscuits.rbi +50 -0
  348. data/rbi/believe/resources/characters.rbi +162 -0
  349. data/rbi/believe/resources/client/ws.rbi +34 -0
  350. data/rbi/believe/resources/client.rbi +17 -0
  351. data/rbi/believe/resources/coaching/principles.rbi +55 -0
  352. data/rbi/believe/resources/coaching.rbi +16 -0
  353. data/rbi/believe/resources/conflicts.rbi +37 -0
  354. data/rbi/believe/resources/episodes.rbi +166 -0
  355. data/rbi/believe/resources/health.rbi +21 -0
  356. data/rbi/believe/resources/matches/commentary.rbi +26 -0
  357. data/rbi/believe/resources/matches.rbi +244 -0
  358. data/rbi/believe/resources/pep_talk.rbi +29 -0
  359. data/rbi/believe/resources/press.rbi +33 -0
  360. data/rbi/believe/resources/quotes.rbi +206 -0
  361. data/rbi/believe/resources/reframe.rbi +30 -0
  362. data/rbi/believe/resources/stream.rbi +22 -0
  363. data/rbi/believe/resources/team_members.rbi +223 -0
  364. data/rbi/believe/resources/teams/logo.rbi +53 -0
  365. data/rbi/believe/resources/teams.rbi +205 -0
  366. data/rbi/believe/resources/ticket_sales.rbi +149 -0
  367. data/rbi/believe/resources/version.rbi +21 -0
  368. data/rbi/believe/resources/webhooks.rbi +150 -0
  369. data/rbi/believe/version.rbi +5 -0
  370. data/sig/believe/client.rbs +64 -0
  371. data/sig/believe/errors.rbs +117 -0
  372. data/sig/believe/file_part.rbs +21 -0
  373. data/sig/believe/internal/skip_limit_page.rbs +15 -0
  374. data/sig/believe/internal/transport/base_client.rbs +133 -0
  375. data/sig/believe/internal/transport/pooled_net_requester.rbs +48 -0
  376. data/sig/believe/internal/type/array_of.rbs +48 -0
  377. data/sig/believe/internal/type/base_model.rbs +102 -0
  378. data/sig/believe/internal/type/base_page.rbs +24 -0
  379. data/sig/believe/internal/type/boolean.rbs +26 -0
  380. data/sig/believe/internal/type/converter.rbs +79 -0
  381. data/sig/believe/internal/type/enum.rbs +32 -0
  382. data/sig/believe/internal/type/file_input.rbs +25 -0
  383. data/sig/believe/internal/type/hash_of.rbs +48 -0
  384. data/sig/believe/internal/type/request_parameters.rbs +19 -0
  385. data/sig/believe/internal/type/union.rbs +52 -0
  386. data/sig/believe/internal/type/unknown.rbs +26 -0
  387. data/sig/believe/internal/util.rbs +199 -0
  388. data/sig/believe/internal.rbs +9 -0
  389. data/sig/believe/models/believe_submit_params.rbs +68 -0
  390. data/sig/believe/models/believe_submit_response.rbs +40 -0
  391. data/sig/believe/models/biscuit.rbs +66 -0
  392. data/sig/believe/models/biscuit_get_fresh_params.rbs +15 -0
  393. data/sig/believe/models/biscuit_list_params.rbs +32 -0
  394. data/sig/believe/models/biscuit_retrieve_params.rbs +23 -0
  395. data/sig/believe/models/character.rbs +91 -0
  396. data/sig/believe/models/character_create_params.rbs +100 -0
  397. data/sig/believe/models/character_delete_params.rbs +23 -0
  398. data/sig/believe/models/character_get_quotes_params.rbs +23 -0
  399. data/sig/believe/models/character_get_quotes_response.rbs +7 -0
  400. data/sig/believe/models/character_list_params.rbs +50 -0
  401. data/sig/believe/models/character_retrieve_params.rbs +23 -0
  402. data/sig/believe/models/character_role.rbs +32 -0
  403. data/sig/believe/models/character_update_params.rbs +99 -0
  404. data/sig/believe/models/client/w_test_params.rbs +16 -0
  405. data/sig/believe/models/client_get_welcome_params.rbs +15 -0
  406. data/sig/believe/models/coach.rbs +71 -0
  407. data/sig/believe/models/coach_specialty.rbs +22 -0
  408. data/sig/believe/models/coaching/coaching_principle.rbs +49 -0
  409. data/sig/believe/models/coaching/principle_get_random_params.rbs +17 -0
  410. data/sig/believe/models/coaching/principle_list_params.rbs +34 -0
  411. data/sig/believe/models/coaching/principle_retrieve_params.rbs +25 -0
  412. data/sig/believe/models/conflict_resolve_params.rbs +62 -0
  413. data/sig/believe/models/conflict_resolve_response.rbs +45 -0
  414. data/sig/believe/models/emotional_stats.rbs +40 -0
  415. data/sig/believe/models/episode.rbs +97 -0
  416. data/sig/believe/models/episode_create_params.rbs +98 -0
  417. data/sig/believe/models/episode_delete_params.rbs +23 -0
  418. data/sig/believe/models/episode_get_wisdom_params.rbs +23 -0
  419. data/sig/believe/models/episode_get_wisdom_response.rbs +7 -0
  420. data/sig/believe/models/episode_list_params.rbs +45 -0
  421. data/sig/believe/models/episode_retrieve_params.rbs +23 -0
  422. data/sig/believe/models/episode_update_params.rbs +101 -0
  423. data/sig/believe/models/equipment_manager.rbs +68 -0
  424. data/sig/believe/models/geo_location.rbs +15 -0
  425. data/sig/believe/models/get_welcome_response.rbs +5 -0
  426. data/sig/believe/models/growth_arc.rbs +40 -0
  427. data/sig/believe/models/health_check_params.rbs +15 -0
  428. data/sig/believe/models/health_check_response.rbs +5 -0
  429. data/sig/believe/models/league.rbs +28 -0
  430. data/sig/believe/models/match.rbs +107 -0
  431. data/sig/believe/models/match_completed_webhook_event.rbs +138 -0
  432. data/sig/believe/models/match_create_params.rbs +116 -0
  433. data/sig/believe/models/match_delete_params.rbs +23 -0
  434. data/sig/believe/models/match_get_lesson_params.rbs +23 -0
  435. data/sig/believe/models/match_get_lesson_response.rbs +7 -0
  436. data/sig/believe/models/match_get_turning_points_params.rbs +23 -0
  437. data/sig/believe/models/match_get_turning_points_response.rbs +7 -0
  438. data/sig/believe/models/match_list_params.rbs +50 -0
  439. data/sig/believe/models/match_result.rbs +16 -0
  440. data/sig/believe/models/match_retrieve_params.rbs +23 -0
  441. data/sig/believe/models/match_stream_live_params.rbs +49 -0
  442. data/sig/believe/models/match_type.rbs +17 -0
  443. data/sig/believe/models/match_update_params.rbs +109 -0
  444. data/sig/believe/models/matches/commentary_stream_params.rbs +25 -0
  445. data/sig/believe/models/matches/commentary_stream_response.rbs +7 -0
  446. data/sig/believe/models/medical_specialty.rbs +22 -0
  447. data/sig/believe/models/medical_staff.rbs +71 -0
  448. data/sig/believe/models/paginated_response.rbs +50 -0
  449. data/sig/believe/models/paginated_response_quote.rbs +50 -0
  450. data/sig/believe/models/pep_talk_retrieve_params.rbs +25 -0
  451. data/sig/believe/models/pep_talk_retrieve_response.rbs +57 -0
  452. data/sig/believe/models/player.rbs +85 -0
  453. data/sig/believe/models/position.rbs +16 -0
  454. data/sig/believe/models/press_simulate_params.rbs +34 -0
  455. data/sig/believe/models/press_simulate_response.rbs +40 -0
  456. data/sig/believe/models/purchase_method.rbs +16 -0
  457. data/sig/believe/models/quote.rbs +83 -0
  458. data/sig/believe/models/quote_create_params.rbs +84 -0
  459. data/sig/believe/models/quote_delete_params.rbs +23 -0
  460. data/sig/believe/models/quote_get_random_params.rbs +36 -0
  461. data/sig/believe/models/quote_list_by_character_params.rbs +36 -0
  462. data/sig/believe/models/quote_list_by_theme_params.rbs +36 -0
  463. data/sig/believe/models/quote_list_params.rbs +60 -0
  464. data/sig/believe/models/quote_moment.rbs +34 -0
  465. data/sig/believe/models/quote_retrieve_params.rbs +23 -0
  466. data/sig/believe/models/quote_theme.rbs +74 -0
  467. data/sig/believe/models/quote_update_params.rbs +81 -0
  468. data/sig/believe/models/reframe_transform_negative_thoughts_params.rbs +30 -0
  469. data/sig/believe/models/reframe_transform_negative_thoughts_response.rbs +40 -0
  470. data/sig/believe/models/registered_webhook.rbs +56 -0
  471. data/sig/believe/models/stream_test_connection_params.rbs +15 -0
  472. data/sig/believe/models/stream_test_connection_response.rbs +5 -0
  473. data/sig/believe/models/team.rbs +109 -0
  474. data/sig/believe/models/team_create_params.rbs +118 -0
  475. data/sig/believe/models/team_delete_params.rbs +23 -0
  476. data/sig/believe/models/team_get_culture_params.rbs +23 -0
  477. data/sig/believe/models/team_get_culture_response.rbs +7 -0
  478. data/sig/believe/models/team_get_rivals_params.rbs +23 -0
  479. data/sig/believe/models/team_get_rivals_response.rbs +7 -0
  480. data/sig/believe/models/team_list_logos_params.rbs +23 -0
  481. data/sig/believe/models/team_list_logos_response.rbs +7 -0
  482. data/sig/believe/models/team_list_params.rbs +45 -0
  483. data/sig/believe/models/team_member_create_params.rbs +299 -0
  484. data/sig/believe/models/team_member_create_response.rbs +15 -0
  485. data/sig/believe/models/team_member_delete_params.rbs +23 -0
  486. data/sig/believe/models/team_member_list_coaches_params.rbs +45 -0
  487. data/sig/believe/models/team_member_list_params.rbs +58 -0
  488. data/sig/believe/models/team_member_list_players_params.rbs +45 -0
  489. data/sig/believe/models/team_member_list_response.rbs +15 -0
  490. data/sig/believe/models/team_member_list_staff_params.rbs +36 -0
  491. data/sig/believe/models/team_member_list_staff_response.rbs +12 -0
  492. data/sig/believe/models/team_member_retrieve_params.rbs +23 -0
  493. data/sig/believe/models/team_member_retrieve_response.rbs +15 -0
  494. data/sig/believe/models/team_member_transferred_webhook_event.rbs +142 -0
  495. data/sig/believe/models/team_member_update_params.rbs +196 -0
  496. data/sig/believe/models/team_member_update_response.rbs +15 -0
  497. data/sig/believe/models/team_retrieve_params.rbs +23 -0
  498. data/sig/believe/models/team_update_params.rbs +119 -0
  499. data/sig/believe/models/team_values.rbs +30 -0
  500. data/sig/believe/models/teams/file_upload.rbs +47 -0
  501. data/sig/believe/models/teams/logo_delete_params.rbs +30 -0
  502. data/sig/believe/models/teams/logo_download_params.rbs +30 -0
  503. data/sig/believe/models/teams/logo_download_response.rbs +7 -0
  504. data/sig/believe/models/teams/logo_upload_params.rbs +30 -0
  505. data/sig/believe/models/ticket_sale.rbs +80 -0
  506. data/sig/believe/models/ticket_sale_create_params.rbs +81 -0
  507. data/sig/believe/models/ticket_sale_delete_params.rbs +23 -0
  508. data/sig/believe/models/ticket_sale_list_params.rbs +55 -0
  509. data/sig/believe/models/ticket_sale_retrieve_params.rbs +23 -0
  510. data/sig/believe/models/ticket_sale_update_params.rbs +86 -0
  511. data/sig/believe/models/turning_point.rbs +35 -0
  512. data/sig/believe/models/unwrap_webhook_event.rbs +13 -0
  513. data/sig/believe/models/version_retrieve_params.rbs +15 -0
  514. data/sig/believe/models/version_retrieve_response.rbs +5 -0
  515. data/sig/believe/models/webhook_create_params.rbs +47 -0
  516. data/sig/believe/models/webhook_create_response.rbs +34 -0
  517. data/sig/believe/models/webhook_delete_params.rbs +23 -0
  518. data/sig/believe/models/webhook_delete_response.rbs +7 -0
  519. data/sig/believe/models/webhook_list_params.rbs +15 -0
  520. data/sig/believe/models/webhook_list_response.rbs +7 -0
  521. data/sig/believe/models/webhook_retrieve_params.rbs +23 -0
  522. data/sig/believe/models/webhook_trigger_event_params.rbs +314 -0
  523. data/sig/believe/models/webhook_trigger_event_response.rbs +93 -0
  524. data/sig/believe/models/webhook_unwrap_params.rbs +15 -0
  525. data/sig/believe/models.rbs +205 -0
  526. data/sig/believe/request_options.rbs +34 -0
  527. data/sig/believe/resources/believe.rbs +15 -0
  528. data/sig/believe/resources/biscuits.rbs +22 -0
  529. data/sig/believe/resources/characters.rbs +66 -0
  530. data/sig/believe/resources/client/ws.rbs +11 -0
  531. data/sig/believe/resources/client.rbs +9 -0
  532. data/sig/believe/resources/coaching/principles.rbs +24 -0
  533. data/sig/believe/resources/coaching.rbs +9 -0
  534. data/sig/believe/resources/conflicts.rbs +15 -0
  535. data/sig/believe/resources/episodes.rbs +69 -0
  536. data/sig/believe/resources/health.rbs +9 -0
  537. data/sig/believe/resources/matches/commentary.rbs +14 -0
  538. data/sig/believe/resources/matches.rbs +85 -0
  539. data/sig/believe/resources/pep_talk.rbs +12 -0
  540. data/sig/believe/resources/press.rbs +14 -0
  541. data/sig/believe/resources/quotes.rbs +80 -0
  542. data/sig/believe/resources/reframe.rbs +13 -0
  543. data/sig/believe/resources/stream.rbs +9 -0
  544. data/sig/believe/resources/team_members.rbs +59 -0
  545. data/sig/believe/resources/teams/logo.rbs +27 -0
  546. data/sig/believe/resources/teams.rbs +85 -0
  547. data/sig/believe/resources/ticket_sales.rbs +60 -0
  548. data/sig/believe/resources/version.rbs +9 -0
  549. data/sig/believe/resources/webhooks.rbs +39 -0
  550. data/sig/believe/version.rbs +3 -0
  551. metadata +622 -0
@@ -0,0 +1,267 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Believe
4
+ module Resources
5
+ # Team members with union types (oneOf) - Players, Coaches, Medical Staff,
6
+ # Equipment Managers
7
+ class TeamMembers
8
+ # Add a new team member to a team.
9
+ #
10
+ # The request body is a **union type (oneOf)** - you must include the
11
+ # `member_type` discriminator field:
12
+ #
13
+ # - `"member_type": "player"` - Creates a player (requires position,
14
+ # jersey_number, etc.)
15
+ # - `"member_type": "coach"` - Creates a coach (requires specialty, etc.)
16
+ # - `"member_type": "medical_staff"` - Creates medical staff (requires medical
17
+ # specialty, etc.)
18
+ # - `"member_type": "equipment_manager"` - Creates equipment manager (requires
19
+ # responsibilities, etc.)
20
+ #
21
+ # The `character_id` field references an existing character from
22
+ # `/characters/{id}`.
23
+ #
24
+ # **Example for creating a player:**
25
+ #
26
+ # ```json
27
+ # {
28
+ # "member_type": "player",
29
+ # "character_id": "sam-obisanya",
30
+ # "team_id": "afc-richmond",
31
+ # "years_with_team": 2,
32
+ # "position": "midfielder",
33
+ # "jersey_number": 24,
34
+ # "goals_scored": 12,
35
+ # "assists": 15
36
+ # }
37
+ # ```
38
+ #
39
+ # @overload create(member:, request_options: {})
40
+ #
41
+ # @param member [::Believe::Models::TeamMemberCreateParams::Member::Player, ::Believe::Models::TeamMemberCreateParams::Member::Coach, ::Believe::Models::TeamMemberCreateParams::Member::MedicalStaff, ::Believe::Models::TeamMemberCreateParams::Member::EquipmentManager] A football player on the team.
42
+ #
43
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
44
+ #
45
+ # @return [::Believe::Models::Player, ::Believe::Models::Coach, ::Believe::Models::MedicalStaff, ::Believe::Models::EquipmentManager]
46
+ #
47
+ # @see ::Believe::Models::TeamMemberCreateParams
48
+ def create(params)
49
+ parsed, options = ::Believe::TeamMemberCreateParams.dump_request(params)
50
+ @client.request(
51
+ method: :post,
52
+ path: "team-members",
53
+ body: parsed[:member],
54
+ model: ::Believe::Models::TeamMemberCreateResponse,
55
+ options: options
56
+ )
57
+ end
58
+
59
+ # Retrieve detailed information about a specific team member.
60
+ #
61
+ # The response is a **union type (oneOf)** - the actual shape depends on the
62
+ # member's type:
63
+ #
64
+ # - **player**: Includes position, jersey_number, goals_scored, assists,
65
+ # is_captain
66
+ # - **coach**: Includes specialty, certifications, win_rate
67
+ # - **medical_staff**: Includes specialty, qualifications, license_number
68
+ # - **equipment_manager**: Includes responsibilities, is_head_kitman
69
+ #
70
+ # Use `character_id` to fetch full character details from
71
+ # `/characters/{character_id}`.
72
+ #
73
+ # @overload retrieve(member_id, request_options: {})
74
+ #
75
+ # @param member_id [String]
76
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
77
+ #
78
+ # @return [::Believe::Models::Player, ::Believe::Models::Coach, ::Believe::Models::MedicalStaff, ::Believe::Models::EquipmentManager]
79
+ #
80
+ # @see ::Believe::Models::TeamMemberRetrieveParams
81
+ def retrieve(member_id, params = {})
82
+ @client.request(
83
+ method: :get,
84
+ path: ["team-members/%1$s", member_id],
85
+ model: ::Believe::Models::TeamMemberRetrieveResponse,
86
+ options: params[:request_options]
87
+ )
88
+ end
89
+
90
+ # Update specific fields of an existing team member. Fields vary by member type.
91
+ #
92
+ # @overload update(member_id, updates:, request_options: {})
93
+ #
94
+ # @param member_id [String]
95
+ #
96
+ # @param updates [::Believe::Models::TeamMemberUpdateParams::Updates::PlayerUpdate, ::Believe::Models::TeamMemberUpdateParams::Updates::CoachUpdate, ::Believe::Models::TeamMemberUpdateParams::Updates::MedicalStaffUpdate, ::Believe::Models::TeamMemberUpdateParams::Updates::EquipmentManagerUpdate] Update model for players.
97
+ #
98
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
99
+ #
100
+ # @return [::Believe::Models::Player, ::Believe::Models::Coach, ::Believe::Models::MedicalStaff, ::Believe::Models::EquipmentManager]
101
+ #
102
+ # @see ::Believe::Models::TeamMemberUpdateParams
103
+ def update(member_id, params)
104
+ parsed, options = ::Believe::TeamMemberUpdateParams.dump_request(params)
105
+ @client.request(
106
+ method: :patch,
107
+ path: ["team-members/%1$s", member_id],
108
+ body: parsed[:updates],
109
+ model: ::Believe::Models::TeamMemberUpdateResponse,
110
+ options: options
111
+ )
112
+ end
113
+
114
+ # Get a paginated list of all team members.
115
+ #
116
+ # This endpoint demonstrates **union types (oneOf)** in the response. Each team
117
+ # member can be one of: Player, Coach, MedicalStaff, or EquipmentManager. The
118
+ # `member_type` field acts as a discriminator to determine the shape of each
119
+ # object.
120
+ #
121
+ # @overload list(limit: nil, member_type: nil, skip: nil, team_id: nil, request_options: {})
122
+ #
123
+ # @param limit [Integer] Maximum number of items to return (max: 100)
124
+ #
125
+ # @param member_type [Symbol, ::Believe::Models::TeamMemberListParams::MemberType, nil] Filter by member type
126
+ #
127
+ # @param skip [Integer] Number of items to skip (offset)
128
+ #
129
+ # @param team_id [String, nil] Filter by team ID
130
+ #
131
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
132
+ #
133
+ # @return [::Believe::Internal::SkipLimitPage<::Believe::Models::Player, ::Believe::Models::Coach, ::Believe::Models::MedicalStaff, ::Believe::Models::EquipmentManager>]
134
+ #
135
+ # @see ::Believe::Models::TeamMemberListParams
136
+ def list(params = {})
137
+ parsed, options = ::Believe::TeamMemberListParams.dump_request(params)
138
+ query = ::Believe::Internal::Util.encode_query_params(parsed)
139
+ @client.request(
140
+ method: :get,
141
+ path: "team-members",
142
+ query: query,
143
+ page: ::Believe::Internal::SkipLimitPage,
144
+ model: ::Believe::Models::TeamMemberListResponse,
145
+ options: options
146
+ )
147
+ end
148
+
149
+ # Remove a team member from the roster.
150
+ #
151
+ # @overload delete(member_id, request_options: {})
152
+ #
153
+ # @param member_id [String]
154
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
155
+ #
156
+ # @return [nil]
157
+ #
158
+ # @see ::Believe::Models::TeamMemberDeleteParams
159
+ def delete(member_id, params = {})
160
+ @client.request(
161
+ method: :delete,
162
+ path: ["team-members/%1$s", member_id],
163
+ model: NilClass,
164
+ options: params[:request_options]
165
+ )
166
+ end
167
+
168
+ # Get only coaches (filtered subset of team members).
169
+ #
170
+ # @overload list_coaches(limit: nil, skip: nil, specialty: nil, team_id: nil, request_options: {})
171
+ #
172
+ # @param limit [Integer] Maximum number of items to return (max: 100)
173
+ #
174
+ # @param skip [Integer] Number of items to skip (offset)
175
+ #
176
+ # @param specialty [Symbol, ::Believe::Models::CoachSpecialty, nil] Filter by specialty
177
+ #
178
+ # @param team_id [String, nil] Filter by team ID
179
+ #
180
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
181
+ #
182
+ # @return [::Believe::Internal::SkipLimitPage<::Believe::Models::Coach>]
183
+ #
184
+ # @see ::Believe::Models::TeamMemberListCoachesParams
185
+ def list_coaches(params = {})
186
+ parsed, options = ::Believe::TeamMemberListCoachesParams.dump_request(params)
187
+ query = ::Believe::Internal::Util.encode_query_params(parsed)
188
+ @client.request(
189
+ method: :get,
190
+ path: "team-members/coaches/",
191
+ query: query,
192
+ page: ::Believe::Internal::SkipLimitPage,
193
+ model: ::Believe::Coach,
194
+ options: options
195
+ )
196
+ end
197
+
198
+ # Get only players (filtered subset of team members).
199
+ #
200
+ # @overload list_players(limit: nil, position: nil, skip: nil, team_id: nil, request_options: {})
201
+ #
202
+ # @param limit [Integer] Maximum number of items to return (max: 100)
203
+ #
204
+ # @param position [Symbol, ::Believe::Models::Position, nil] Filter by position
205
+ #
206
+ # @param skip [Integer] Number of items to skip (offset)
207
+ #
208
+ # @param team_id [String, nil] Filter by team ID
209
+ #
210
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
211
+ #
212
+ # @return [::Believe::Internal::SkipLimitPage<::Believe::Models::Player>]
213
+ #
214
+ # @see ::Believe::Models::TeamMemberListPlayersParams
215
+ def list_players(params = {})
216
+ parsed, options = ::Believe::TeamMemberListPlayersParams.dump_request(params)
217
+ query = ::Believe::Internal::Util.encode_query_params(parsed)
218
+ @client.request(
219
+ method: :get,
220
+ path: "team-members/players/",
221
+ query: query,
222
+ page: ::Believe::Internal::SkipLimitPage,
223
+ model: ::Believe::Player,
224
+ options: options
225
+ )
226
+ end
227
+
228
+ # Get all staff members (medical staff and equipment managers).
229
+ #
230
+ # This demonstrates a **narrower union type** - the response is oneOf MedicalStaff
231
+ # or EquipmentManager.
232
+ #
233
+ # @overload list_staff(limit: nil, skip: nil, team_id: nil, request_options: {})
234
+ #
235
+ # @param limit [Integer] Maximum number of items to return (max: 100)
236
+ #
237
+ # @param skip [Integer] Number of items to skip (offset)
238
+ #
239
+ # @param team_id [String, nil] Filter by team ID
240
+ #
241
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
242
+ #
243
+ # @return [::Believe::Internal::SkipLimitPage<::Believe::Models::MedicalStaff, ::Believe::Models::EquipmentManager>]
244
+ #
245
+ # @see ::Believe::Models::TeamMemberListStaffParams
246
+ def list_staff(params = {})
247
+ parsed, options = ::Believe::TeamMemberListStaffParams.dump_request(params)
248
+ query = ::Believe::Internal::Util.encode_query_params(parsed)
249
+ @client.request(
250
+ method: :get,
251
+ path: "team-members/staff/",
252
+ query: query,
253
+ page: ::Believe::Internal::SkipLimitPage,
254
+ model: ::Believe::Models::TeamMemberListStaffResponse,
255
+ options: options
256
+ )
257
+ end
258
+
259
+ # @api private
260
+ #
261
+ # @param client [::Believe::Client]
262
+ def initialize(client:)
263
+ @client = client
264
+ end
265
+ end
266
+ end
267
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Believe
4
+ module Resources
5
+ class Teams
6
+ # Operations related to football teams
7
+ class Logo
8
+ # Delete a team's logo.
9
+ #
10
+ # @overload delete(file_id, team_id:, request_options: {})
11
+ #
12
+ # @param file_id [String]
13
+ # @param team_id [String]
14
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
15
+ #
16
+ # @return [nil]
17
+ #
18
+ # @see ::Believe::Models::Teams::LogoDeleteParams
19
+ def delete(file_id, params)
20
+ parsed, options = ::Believe::Teams::LogoDeleteParams.dump_request(params)
21
+ team_id =
22
+ parsed.delete(:team_id) do
23
+ raise ArgumentError.new("missing required path argument #{_1}")
24
+ end
25
+ @client.request(
26
+ method: :delete,
27
+ path: ["teams/%1$s/logo/%2$s", team_id, file_id],
28
+ model: NilClass,
29
+ options: options
30
+ )
31
+ end
32
+
33
+ # Download a team's logo by file ID.
34
+ #
35
+ # @overload download(file_id, team_id:, request_options: {})
36
+ #
37
+ # @param file_id [String]
38
+ # @param team_id [String]
39
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
40
+ #
41
+ # @return [Object]
42
+ #
43
+ # @see ::Believe::Models::Teams::LogoDownloadParams
44
+ def download(file_id, params)
45
+ parsed, options = ::Believe::Teams::LogoDownloadParams.dump_request(params)
46
+ team_id =
47
+ parsed.delete(:team_id) do
48
+ raise ArgumentError.new("missing required path argument #{_1}")
49
+ end
50
+ @client.request(
51
+ method: :get,
52
+ path: ["teams/%1$s/logo/%2$s", team_id, file_id],
53
+ model: ::Believe::Internal::Type::Unknown,
54
+ options: options
55
+ )
56
+ end
57
+
58
+ # Upload a logo image for a team. Accepts image files (jpg, png, gif, webp).
59
+ #
60
+ # @overload upload(team_id, file:, request_options: {})
61
+ #
62
+ # @param team_id [String]
63
+ #
64
+ # @param file [Pathname, StringIO, IO, String, ::Believe::FilePart] Logo image file
65
+ #
66
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
67
+ #
68
+ # @return [::Believe::Models::Teams::FileUpload]
69
+ #
70
+ # @see ::Believe::Models::Teams::LogoUploadParams
71
+ def upload(team_id, params)
72
+ parsed, options = ::Believe::Teams::LogoUploadParams.dump_request(params)
73
+ @client.request(
74
+ method: :post,
75
+ path: ["teams/%1$s/logo", team_id],
76
+ headers: {"content-type" => "multipart/form-data"},
77
+ body: parsed,
78
+ model: ::Believe::Teams::FileUpload,
79
+ options: options
80
+ )
81
+ end
82
+
83
+ # @api private
84
+ #
85
+ # @param client [::Believe::Client]
86
+ def initialize(client:)
87
+ @client = client
88
+ end
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,250 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Believe
4
+ module Resources
5
+ # Operations related to football teams
6
+ class Teams
7
+ # Operations related to football teams
8
+ # @return [::Believe::Resources::Teams::Logo]
9
+ attr_reader :logo
10
+
11
+ # Add a new team to the league.
12
+ #
13
+ # @overload create(culture_score:, founded_year:, league:, name:, stadium:, values:, annual_budget_gbp: nil, average_attendance: nil, contact_email: nil, is_active: nil, nickname: nil, primary_color: nil, rival_teams: nil, secondary_color: nil, stadium_location: nil, website: nil, win_percentage: nil, request_options: {})
14
+ #
15
+ # @param culture_score [Integer] Team culture/morale score (0-100)
16
+ #
17
+ # @param founded_year [Integer] Year the club was founded
18
+ #
19
+ # @param league [Symbol, ::Believe::Models::League] Current league
20
+ #
21
+ # @param name [String] Team name
22
+ #
23
+ # @param stadium [String] Home stadium name
24
+ #
25
+ # @param values [::Believe::Models::TeamValues] Team's core values
26
+ #
27
+ # @param annual_budget_gbp [Float, String, nil] Annual budget in GBP
28
+ #
29
+ # @param average_attendance [Float, nil] Average match attendance
30
+ #
31
+ # @param contact_email [String, nil] Team contact email
32
+ #
33
+ # @param is_active [Boolean] Whether the team is currently active
34
+ #
35
+ # @param nickname [String, nil] Team nickname
36
+ #
37
+ # @param primary_color [String, nil] Primary team color (hex)
38
+ #
39
+ # @param rival_teams [Array<String>] List of rival team IDs
40
+ #
41
+ # @param secondary_color [String, nil] Secondary team color (hex)
42
+ #
43
+ # @param stadium_location [::Believe::Models::GeoLocation, nil] Geographic coordinates for a location.
44
+ #
45
+ # @param website [String, nil] Official team website
46
+ #
47
+ # @param win_percentage [Float, nil] Season win percentage
48
+ #
49
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
50
+ #
51
+ # @return [::Believe::Models::Team]
52
+ #
53
+ # @see ::Believe::Models::TeamCreateParams
54
+ def create(params)
55
+ parsed, options = ::Believe::TeamCreateParams.dump_request(params)
56
+ @client.request(method: :post, path: "teams", body: parsed, model: ::Believe::Team, options: options)
57
+ end
58
+
59
+ # Retrieve detailed information about a specific team.
60
+ #
61
+ # @overload retrieve(team_id, request_options: {})
62
+ #
63
+ # @param team_id [String]
64
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
65
+ #
66
+ # @return [::Believe::Models::Team]
67
+ #
68
+ # @see ::Believe::Models::TeamRetrieveParams
69
+ def retrieve(team_id, params = {})
70
+ @client.request(
71
+ method: :get,
72
+ path: ["teams/%1$s", team_id],
73
+ model: ::Believe::Team,
74
+ options: params[:request_options]
75
+ )
76
+ end
77
+
78
+ # Update specific fields of an existing team.
79
+ #
80
+ # @overload update(team_id, annual_budget_gbp: nil, average_attendance: nil, contact_email: nil, culture_score: nil, founded_year: nil, is_active: nil, league: nil, name: nil, nickname: nil, primary_color: nil, rival_teams: nil, secondary_color: nil, stadium: nil, stadium_location: nil, values: nil, website: nil, win_percentage: nil, request_options: {})
81
+ #
82
+ # @param team_id [String]
83
+ #
84
+ # @param annual_budget_gbp [Float, String, nil]
85
+ #
86
+ # @param average_attendance [Float, nil]
87
+ #
88
+ # @param contact_email [String, nil]
89
+ #
90
+ # @param culture_score [Integer, nil]
91
+ #
92
+ # @param founded_year [Integer, nil]
93
+ #
94
+ # @param is_active [Boolean, nil]
95
+ #
96
+ # @param league [Symbol, ::Believe::Models::League, nil] Football leagues.
97
+ #
98
+ # @param name [String, nil]
99
+ #
100
+ # @param nickname [String, nil]
101
+ #
102
+ # @param primary_color [String, nil]
103
+ #
104
+ # @param rival_teams [Array<String>, nil]
105
+ #
106
+ # @param secondary_color [String, nil]
107
+ #
108
+ # @param stadium [String, nil]
109
+ #
110
+ # @param stadium_location [::Believe::Models::GeoLocation, nil] Geographic coordinates for a location.
111
+ #
112
+ # @param values [::Believe::Models::TeamValues, nil] Core values that define a team's culture.
113
+ #
114
+ # @param website [String, nil]
115
+ #
116
+ # @param win_percentage [Float, nil]
117
+ #
118
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
119
+ #
120
+ # @return [::Believe::Models::Team]
121
+ #
122
+ # @see ::Believe::Models::TeamUpdateParams
123
+ def update(team_id, params = {})
124
+ parsed, options = ::Believe::TeamUpdateParams.dump_request(params)
125
+ @client.request(
126
+ method: :patch,
127
+ path: ["teams/%1$s", team_id],
128
+ body: parsed,
129
+ model: ::Believe::Team,
130
+ options: options
131
+ )
132
+ end
133
+
134
+ # Get a paginated list of all teams with optional filtering by league or culture
135
+ # score.
136
+ #
137
+ # @overload list(league: nil, limit: nil, min_culture_score: nil, skip: nil, request_options: {})
138
+ #
139
+ # @param league [Symbol, ::Believe::Models::League, nil] Filter by league
140
+ #
141
+ # @param limit [Integer] Maximum number of items to return (max: 100)
142
+ #
143
+ # @param min_culture_score [Integer, nil] Minimum culture score
144
+ #
145
+ # @param skip [Integer] Number of items to skip (offset)
146
+ #
147
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
148
+ #
149
+ # @return [::Believe::Internal::SkipLimitPage<::Believe::Models::Team>]
150
+ #
151
+ # @see ::Believe::Models::TeamListParams
152
+ def list(params = {})
153
+ parsed, options = ::Believe::TeamListParams.dump_request(params)
154
+ query = ::Believe::Internal::Util.encode_query_params(parsed)
155
+ @client.request(
156
+ method: :get,
157
+ path: "teams",
158
+ query: query,
159
+ page: ::Believe::Internal::SkipLimitPage,
160
+ model: ::Believe::Team,
161
+ options: options
162
+ )
163
+ end
164
+
165
+ # Remove a team from the database (relegation to oblivion).
166
+ #
167
+ # @overload delete(team_id, request_options: {})
168
+ #
169
+ # @param team_id [String]
170
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
171
+ #
172
+ # @return [nil]
173
+ #
174
+ # @see ::Believe::Models::TeamDeleteParams
175
+ def delete(team_id, params = {})
176
+ @client.request(
177
+ method: :delete,
178
+ path: ["teams/%1$s", team_id],
179
+ model: NilClass,
180
+ options: params[:request_options]
181
+ )
182
+ end
183
+
184
+ # Get detailed culture and values information for a team.
185
+ #
186
+ # @overload get_culture(team_id, request_options: {})
187
+ #
188
+ # @param team_id [String]
189
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
190
+ #
191
+ # @return [Hash{Symbol=>Object}]
192
+ #
193
+ # @see ::Believe::Models::TeamGetCultureParams
194
+ def get_culture(team_id, params = {})
195
+ @client.request(
196
+ method: :get,
197
+ path: ["teams/%1$s/culture", team_id],
198
+ model: ::Believe::Internal::Type::HashOf[::Believe::Internal::Type::Unknown],
199
+ options: params[:request_options]
200
+ )
201
+ end
202
+
203
+ # Get all rival teams for a specific team.
204
+ #
205
+ # @overload get_rivals(team_id, request_options: {})
206
+ #
207
+ # @param team_id [String]
208
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
209
+ #
210
+ # @return [Array<::Believe::Models::Team>]
211
+ #
212
+ # @see ::Believe::Models::TeamGetRivalsParams
213
+ def get_rivals(team_id, params = {})
214
+ @client.request(
215
+ method: :get,
216
+ path: ["teams/%1$s/rivals", team_id],
217
+ model: ::Believe::Internal::Type::ArrayOf[::Believe::Team],
218
+ options: params[:request_options]
219
+ )
220
+ end
221
+
222
+ # List all uploaded logos for a team.
223
+ #
224
+ # @overload list_logos(team_id, request_options: {})
225
+ #
226
+ # @param team_id [String]
227
+ # @param request_options [::Believe::RequestOptions, Hash{Symbol=>Object}, nil]
228
+ #
229
+ # @return [Array<::Believe::Models::Teams::FileUpload>]
230
+ #
231
+ # @see ::Believe::Models::TeamListLogosParams
232
+ def list_logos(team_id, params = {})
233
+ @client.request(
234
+ method: :get,
235
+ path: ["teams/%1$s/logos", team_id],
236
+ model: ::Believe::Internal::Type::ArrayOf[::Believe::Teams::FileUpload],
237
+ options: params[:request_options]
238
+ )
239
+ end
240
+
241
+ # @api private
242
+ #
243
+ # @param client [::Believe::Client]
244
+ def initialize(client:)
245
+ @client = client
246
+ @logo = ::Believe::Resources::Teams::Logo.new(client: client)
247
+ end
248
+ end
249
+ end
250
+ end