sports-odds-api 1.0.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 (158) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +10 -0
  4. data/README.md +186 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/sports_odds_api/client.rb +112 -0
  7. data/lib/sports_odds_api/errors.rb +228 -0
  8. data/lib/sports_odds_api/file_part.rb +55 -0
  9. data/lib/sports_odds_api/internal/next_cursor_page.rb +86 -0
  10. data/lib/sports_odds_api/internal/transport/base_client.rb +580 -0
  11. data/lib/sports_odds_api/internal/transport/pooled_net_requester.rb +201 -0
  12. data/lib/sports_odds_api/internal/type/array_of.rb +168 -0
  13. data/lib/sports_odds_api/internal/type/base_model.rb +534 -0
  14. data/lib/sports_odds_api/internal/type/base_page.rb +55 -0
  15. data/lib/sports_odds_api/internal/type/boolean.rb +77 -0
  16. data/lib/sports_odds_api/internal/type/converter.rb +327 -0
  17. data/lib/sports_odds_api/internal/type/enum.rb +131 -0
  18. data/lib/sports_odds_api/internal/type/file_input.rb +108 -0
  19. data/lib/sports_odds_api/internal/type/hash_of.rb +188 -0
  20. data/lib/sports_odds_api/internal/type/request_parameters.rb +42 -0
  21. data/lib/sports_odds_api/internal/type/union.rb +243 -0
  22. data/lib/sports_odds_api/internal/type/unknown.rb +81 -0
  23. data/lib/sports_odds_api/internal/util.rb +914 -0
  24. data/lib/sports_odds_api/internal.rb +20 -0
  25. data/lib/sports_odds_api/models/account_get_usage_params.rb +14 -0
  26. data/lib/sports_odds_api/models/account_usage.rb +91 -0
  27. data/lib/sports_odds_api/models/event.rb +686 -0
  28. data/lib/sports_odds_api/models/event_get_params.rb +195 -0
  29. data/lib/sports_odds_api/models/league.rb +39 -0
  30. data/lib/sports_odds_api/models/league_get_params.rb +30 -0
  31. data/lib/sports_odds_api/models/league_get_response.rb +8 -0
  32. data/lib/sports_odds_api/models/player.rb +128 -0
  33. data/lib/sports_odds_api/models/player_get_params.rb +58 -0
  34. data/lib/sports_odds_api/models/rate_limit_interval.rb +92 -0
  35. data/lib/sports_odds_api/models/sport.rb +197 -0
  36. data/lib/sports_odds_api/models/sport_get_params.rb +14 -0
  37. data/lib/sports_odds_api/models/sport_get_response.rb +8 -0
  38. data/lib/sports_odds_api/models/stat.rb +144 -0
  39. data/lib/sports_odds_api/models/stat_get_params.rb +43 -0
  40. data/lib/sports_odds_api/models/stat_get_response.rb +8 -0
  41. data/lib/sports_odds_api/models/stream_events_params.rb +38 -0
  42. data/lib/sports_odds_api/models/stream_events_response.rb +120 -0
  43. data/lib/sports_odds_api/models/team.rb +162 -0
  44. data/lib/sports_odds_api/models/team_get_params.rb +58 -0
  45. data/lib/sports_odds_api/models.rb +76 -0
  46. data/lib/sports_odds_api/request_options.rb +78 -0
  47. data/lib/sports_odds_api/resources/account.rb +33 -0
  48. data/lib/sports_odds_api/resources/events.rb +94 -0
  49. data/lib/sports_odds_api/resources/leagues.rb +39 -0
  50. data/lib/sports_odds_api/resources/players.rb +48 -0
  51. data/lib/sports_odds_api/resources/sports.rb +33 -0
  52. data/lib/sports_odds_api/resources/stats.rb +44 -0
  53. data/lib/sports_odds_api/resources/stream.rb +40 -0
  54. data/lib/sports_odds_api/resources/teams.rb +48 -0
  55. data/lib/sports_odds_api/version.rb +5 -0
  56. data/lib/sports_odds_api.rb +82 -0
  57. data/manifest.yaml +15 -0
  58. data/rbi/sports_odds_api/client.rbi +83 -0
  59. data/rbi/sports_odds_api/errors.rbi +205 -0
  60. data/rbi/sports_odds_api/file_part.rbi +37 -0
  61. data/rbi/sports_odds_api/internal/next_cursor_page.rbi +22 -0
  62. data/rbi/sports_odds_api/internal/transport/base_client.rbi +305 -0
  63. data/rbi/sports_odds_api/internal/transport/pooled_net_requester.rbi +80 -0
  64. data/rbi/sports_odds_api/internal/type/array_of.rbi +104 -0
  65. data/rbi/sports_odds_api/internal/type/base_model.rbi +310 -0
  66. data/rbi/sports_odds_api/internal/type/base_page.rbi +43 -0
  67. data/rbi/sports_odds_api/internal/type/boolean.rbi +58 -0
  68. data/rbi/sports_odds_api/internal/type/converter.rbi +225 -0
  69. data/rbi/sports_odds_api/internal/type/enum.rbi +82 -0
  70. data/rbi/sports_odds_api/internal/type/file_input.rbi +59 -0
  71. data/rbi/sports_odds_api/internal/type/hash_of.rbi +104 -0
  72. data/rbi/sports_odds_api/internal/type/request_parameters.rbi +31 -0
  73. data/rbi/sports_odds_api/internal/type/union.rbi +128 -0
  74. data/rbi/sports_odds_api/internal/type/unknown.rbi +58 -0
  75. data/rbi/sports_odds_api/internal/util.rbi +487 -0
  76. data/rbi/sports_odds_api/internal.rbi +18 -0
  77. data/rbi/sports_odds_api/models/account_get_usage_params.rbi +32 -0
  78. data/rbi/sports_odds_api/models/account_usage.rbi +173 -0
  79. data/rbi/sports_odds_api/models/event.rbi +1269 -0
  80. data/rbi/sports_odds_api/models/event_get_params.rbi +286 -0
  81. data/rbi/sports_odds_api/models/league.rbi +74 -0
  82. data/rbi/sports_odds_api/models/league_get_params.rbi +60 -0
  83. data/rbi/sports_odds_api/models/league_get_response.rbi +11 -0
  84. data/rbi/sports_odds_api/models/player.rbi +247 -0
  85. data/rbi/sports_odds_api/models/player_get_params.rbi +95 -0
  86. data/rbi/sports_odds_api/models/rate_limit_interval.rbi +176 -0
  87. data/rbi/sports_odds_api/models/sport.rbi +371 -0
  88. data/rbi/sports_odds_api/models/sport_get_params.rbi +29 -0
  89. data/rbi/sports_odds_api/models/sport_get_response.rbi +11 -0
  90. data/rbi/sports_odds_api/models/stat.rbi +273 -0
  91. data/rbi/sports_odds_api/models/stat_get_params.rbi +72 -0
  92. data/rbi/sports_odds_api/models/stat_get_response.rbi +11 -0
  93. data/rbi/sports_odds_api/models/stream_events_params.rbi +71 -0
  94. data/rbi/sports_odds_api/models/stream_events_response.rbi +247 -0
  95. data/rbi/sports_odds_api/models/team.rbi +305 -0
  96. data/rbi/sports_odds_api/models/team_get_params.rbi +92 -0
  97. data/rbi/sports_odds_api/models.rbi +35 -0
  98. data/rbi/sports_odds_api/request_options.rbi +59 -0
  99. data/rbi/sports_odds_api/resources/account.rbi +21 -0
  100. data/rbi/sports_odds_api/resources/events.rbi +96 -0
  101. data/rbi/sports_odds_api/resources/leagues.rbi +29 -0
  102. data/rbi/sports_odds_api/resources/players.rbi +41 -0
  103. data/rbi/sports_odds_api/resources/sports.rbi +21 -0
  104. data/rbi/sports_odds_api/resources/stats.rbi +34 -0
  105. data/rbi/sports_odds_api/resources/stream.rbi +32 -0
  106. data/rbi/sports_odds_api/resources/teams.rbi +39 -0
  107. data/rbi/sports_odds_api/version.rbi +5 -0
  108. data/sig/sports_odds_api/client.rbs +45 -0
  109. data/sig/sports_odds_api/errors.rbs +117 -0
  110. data/sig/sports_odds_api/file_part.rbs +21 -0
  111. data/sig/sports_odds_api/internal/next_cursor_page.rbs +13 -0
  112. data/sig/sports_odds_api/internal/transport/base_client.rbs +133 -0
  113. data/sig/sports_odds_api/internal/transport/pooled_net_requester.rbs +45 -0
  114. data/sig/sports_odds_api/internal/type/array_of.rbs +48 -0
  115. data/sig/sports_odds_api/internal/type/base_model.rbs +104 -0
  116. data/sig/sports_odds_api/internal/type/base_page.rbs +24 -0
  117. data/sig/sports_odds_api/internal/type/boolean.rbs +26 -0
  118. data/sig/sports_odds_api/internal/type/converter.rbs +79 -0
  119. data/sig/sports_odds_api/internal/type/enum.rbs +32 -0
  120. data/sig/sports_odds_api/internal/type/file_input.rbs +25 -0
  121. data/sig/sports_odds_api/internal/type/hash_of.rbs +48 -0
  122. data/sig/sports_odds_api/internal/type/request_parameters.rbs +19 -0
  123. data/sig/sports_odds_api/internal/type/union.rbs +52 -0
  124. data/sig/sports_odds_api/internal/type/unknown.rbs +26 -0
  125. data/sig/sports_odds_api/internal/util.rbs +185 -0
  126. data/sig/sports_odds_api/internal.rbs +10 -0
  127. data/sig/sports_odds_api/models/account_get_usage_params.rbs +15 -0
  128. data/sig/sports_odds_api/models/account_usage.rbs +116 -0
  129. data/sig/sports_odds_api/models/event.rbs +860 -0
  130. data/sig/sports_odds_api/models/event_get_params.rbs +168 -0
  131. data/sig/sports_odds_api/models/league.rbs +50 -0
  132. data/sig/sports_odds_api/models/league_get_params.rbs +32 -0
  133. data/sig/sports_odds_api/models/league_get_response.rbs +7 -0
  134. data/sig/sports_odds_api/models/player.rbs +162 -0
  135. data/sig/sports_odds_api/models/player_get_params.rbs +56 -0
  136. data/sig/sports_odds_api/models/rate_limit_interval.rbs +67 -0
  137. data/sig/sports_odds_api/models/sport.rbs +241 -0
  138. data/sig/sports_odds_api/models/sport_get_params.rbs +15 -0
  139. data/sig/sports_odds_api/models/sport_get_response.rbs +7 -0
  140. data/sig/sports_odds_api/models/stat.rbs +166 -0
  141. data/sig/sports_odds_api/models/stat_get_params.rbs +38 -0
  142. data/sig/sports_odds_api/models/stat_get_response.rbs +7 -0
  143. data/sig/sports_odds_api/models/stream_events_params.rbs +38 -0
  144. data/sig/sports_odds_api/models/stream_events_response.rbs +151 -0
  145. data/sig/sports_odds_api/models/team.rbs +201 -0
  146. data/sig/sports_odds_api/models/team_get_params.rbs +56 -0
  147. data/sig/sports_odds_api/models.rbs +33 -0
  148. data/sig/sports_odds_api/request_options.rbs +36 -0
  149. data/sig/sports_odds_api/resources/account.rbs +11 -0
  150. data/sig/sports_odds_api/resources/events.rbs +32 -0
  151. data/sig/sports_odds_api/resources/leagues.rbs +13 -0
  152. data/sig/sports_odds_api/resources/players.rbs +16 -0
  153. data/sig/sports_odds_api/resources/sports.rbs +11 -0
  154. data/sig/sports_odds_api/resources/stats.rbs +14 -0
  155. data/sig/sports_odds_api/resources/stream.rbs +14 -0
  156. data/sig/sports_odds_api/resources/teams.rbs +16 -0
  157. data/sig/sports_odds_api/version.rbs +3 -0
  158. metadata +215 -0
@@ -0,0 +1,201 @@
1
+ module SportsOddsAPI
2
+ module Models
3
+ type team =
4
+ {
5
+ colors: SportsOddsAPI::Team::Colors,
6
+ league_id: String,
7
+ logo: String,
8
+ lookups: SportsOddsAPI::Team::Lookups,
9
+ names: SportsOddsAPI::Team::Names,
10
+ sport_id: String,
11
+ standings: SportsOddsAPI::Team::Standings,
12
+ team_id: String
13
+ }
14
+
15
+ class Team < SportsOddsAPI::Internal::Type::BaseModel
16
+ attr_reader colors: SportsOddsAPI::Team::Colors?
17
+
18
+ def colors=: (SportsOddsAPI::Team::Colors) -> SportsOddsAPI::Team::Colors
19
+
20
+ attr_reader league_id: String?
21
+
22
+ def league_id=: (String) -> String
23
+
24
+ attr_reader logo: String?
25
+
26
+ def logo=: (String) -> String
27
+
28
+ attr_reader lookups: SportsOddsAPI::Team::Lookups?
29
+
30
+ def lookups=: (
31
+ SportsOddsAPI::Team::Lookups
32
+ ) -> SportsOddsAPI::Team::Lookups
33
+
34
+ attr_reader names: SportsOddsAPI::Team::Names?
35
+
36
+ def names=: (SportsOddsAPI::Team::Names) -> SportsOddsAPI::Team::Names
37
+
38
+ attr_reader sport_id: String?
39
+
40
+ def sport_id=: (String) -> String
41
+
42
+ attr_reader standings: SportsOddsAPI::Team::Standings?
43
+
44
+ def standings=: (
45
+ SportsOddsAPI::Team::Standings
46
+ ) -> SportsOddsAPI::Team::Standings
47
+
48
+ attr_reader team_id: String?
49
+
50
+ def team_id=: (String) -> String
51
+
52
+ def initialize: (
53
+ ?colors: SportsOddsAPI::Team::Colors,
54
+ ?league_id: String,
55
+ ?logo: String,
56
+ ?lookups: SportsOddsAPI::Team::Lookups,
57
+ ?names: SportsOddsAPI::Team::Names,
58
+ ?sport_id: String,
59
+ ?standings: SportsOddsAPI::Team::Standings,
60
+ ?team_id: String
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ colors: SportsOddsAPI::Team::Colors,
65
+ league_id: String,
66
+ logo: String,
67
+ lookups: SportsOddsAPI::Team::Lookups,
68
+ names: SportsOddsAPI::Team::Names,
69
+ sport_id: String,
70
+ standings: SportsOddsAPI::Team::Standings,
71
+ team_id: String
72
+ }
73
+
74
+ type colors =
75
+ {
76
+ primary: String,
77
+ primary_contrast: String,
78
+ secondary: String,
79
+ secondary_contrast: String
80
+ }
81
+
82
+ class Colors < SportsOddsAPI::Internal::Type::BaseModel
83
+ attr_reader primary: String?
84
+
85
+ def primary=: (String) -> String
86
+
87
+ attr_reader primary_contrast: String?
88
+
89
+ def primary_contrast=: (String) -> String
90
+
91
+ attr_reader secondary: String?
92
+
93
+ def secondary=: (String) -> String
94
+
95
+ attr_reader secondary_contrast: String?
96
+
97
+ def secondary_contrast=: (String) -> String
98
+
99
+ def initialize: (
100
+ ?primary: String,
101
+ ?primary_contrast: String,
102
+ ?secondary: String,
103
+ ?secondary_contrast: String
104
+ ) -> void
105
+
106
+ def to_hash: -> {
107
+ primary: String,
108
+ primary_contrast: String,
109
+ secondary: String,
110
+ secondary_contrast: String
111
+ }
112
+ end
113
+
114
+ type lookups = { team_name: ::Array[String] }
115
+
116
+ class Lookups < SportsOddsAPI::Internal::Type::BaseModel
117
+ attr_reader team_name: ::Array[String]?
118
+
119
+ def team_name=: (::Array[String]) -> ::Array[String]
120
+
121
+ def initialize: (?team_name: ::Array[String]) -> void
122
+
123
+ def to_hash: -> { team_name: ::Array[String] }
124
+ end
125
+
126
+ type names = { long: String, medium: String, short: String }
127
+
128
+ class Names < SportsOddsAPI::Internal::Type::BaseModel
129
+ attr_reader long: String?
130
+
131
+ def long=: (String) -> String
132
+
133
+ attr_reader medium: String?
134
+
135
+ def medium=: (String) -> String
136
+
137
+ attr_reader short: String?
138
+
139
+ def short=: (String) -> String
140
+
141
+ def initialize: (?long: String, ?medium: String, ?short: String) -> void
142
+
143
+ def to_hash: -> { long: String, medium: String, short: String }
144
+ end
145
+
146
+ type standings =
147
+ {
148
+ losses: Float,
149
+ played: Float,
150
+ position: String,
151
+ record: String,
152
+ ties: Float,
153
+ wins: Float
154
+ }
155
+
156
+ class Standings < SportsOddsAPI::Internal::Type::BaseModel
157
+ attr_reader losses: Float?
158
+
159
+ def losses=: (Float) -> Float
160
+
161
+ attr_reader played: Float?
162
+
163
+ def played=: (Float) -> Float
164
+
165
+ attr_reader position: String?
166
+
167
+ def position=: (String) -> String
168
+
169
+ attr_reader record: String?
170
+
171
+ def record=: (String) -> String
172
+
173
+ attr_reader ties: Float?
174
+
175
+ def ties=: (Float) -> Float
176
+
177
+ attr_reader wins: Float?
178
+
179
+ def wins=: (Float) -> Float
180
+
181
+ def initialize: (
182
+ ?losses: Float,
183
+ ?played: Float,
184
+ ?position: String,
185
+ ?record: String,
186
+ ?ties: Float,
187
+ ?wins: Float
188
+ ) -> void
189
+
190
+ def to_hash: -> {
191
+ losses: Float,
192
+ played: Float,
193
+ position: String,
194
+ record: String,
195
+ ties: Float,
196
+ wins: Float
197
+ }
198
+ end
199
+ end
200
+ end
201
+ end
@@ -0,0 +1,56 @@
1
+ module SportsOddsAPI
2
+ module Models
3
+ type team_get_params =
4
+ {
5
+ cursor: String,
6
+ league_id: String,
7
+ limit: Float,
8
+ sport_id: String,
9
+ team_id: String
10
+ }
11
+ & SportsOddsAPI::Internal::Type::request_parameters
12
+
13
+ class TeamGetParams < SportsOddsAPI::Internal::Type::BaseModel
14
+ extend SportsOddsAPI::Internal::Type::RequestParameters::Converter
15
+ include SportsOddsAPI::Internal::Type::RequestParameters
16
+
17
+ attr_reader cursor: String?
18
+
19
+ def cursor=: (String) -> String
20
+
21
+ attr_reader league_id: String?
22
+
23
+ def league_id=: (String) -> String
24
+
25
+ attr_reader limit: Float?
26
+
27
+ def limit=: (Float) -> Float
28
+
29
+ attr_reader sport_id: String?
30
+
31
+ def sport_id=: (String) -> String
32
+
33
+ attr_reader team_id: String?
34
+
35
+ def team_id=: (String) -> String
36
+
37
+ def initialize: (
38
+ ?cursor: String,
39
+ ?league_id: String,
40
+ ?limit: Float,
41
+ ?sport_id: String,
42
+ ?team_id: String,
43
+ ?request_options: SportsOddsAPI::request_opts
44
+ ) -> void
45
+
46
+ def to_hash: -> {
47
+ cursor: String,
48
+ league_id: String,
49
+ limit: Float,
50
+ sport_id: String,
51
+ team_id: String,
52
+ request_options: SportsOddsAPI::RequestOptions
53
+ }
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,33 @@
1
+ module SportsOddsAPI
2
+ class AccountGetUsageParams = SportsOddsAPI::Models::AccountGetUsageParams
3
+
4
+ class AccountUsage = SportsOddsAPI::Models::AccountUsage
5
+
6
+ class Event = SportsOddsAPI::Models::Event
7
+
8
+ class EventGetParams = SportsOddsAPI::Models::EventGetParams
9
+
10
+ class League = SportsOddsAPI::Models::League
11
+
12
+ class LeagueGetParams = SportsOddsAPI::Models::LeagueGetParams
13
+
14
+ class Player = SportsOddsAPI::Models::Player
15
+
16
+ class PlayerGetParams = SportsOddsAPI::Models::PlayerGetParams
17
+
18
+ class RateLimitInterval = SportsOddsAPI::Models::RateLimitInterval
19
+
20
+ class Sport = SportsOddsAPI::Models::Sport
21
+
22
+ class SportGetParams = SportsOddsAPI::Models::SportGetParams
23
+
24
+ class Stat = SportsOddsAPI::Models::Stat
25
+
26
+ class StatGetParams = SportsOddsAPI::Models::StatGetParams
27
+
28
+ class StreamEventsParams = SportsOddsAPI::Models::StreamEventsParams
29
+
30
+ class Team = SportsOddsAPI::Models::Team
31
+
32
+ class TeamGetParams = SportsOddsAPI::Models::TeamGetParams
33
+ end
@@ -0,0 +1,36 @@
1
+ module SportsOddsAPI
2
+ type request_opts =
3
+ SportsOddsAPI::RequestOptions
4
+ | SportsOddsAPI::request_options
5
+ | ::Hash[Symbol, top]
6
+
7
+ type request_options =
8
+ {
9
+ idempotency_key: String?,
10
+ extra_query: ::Hash[String, (::Array[String] | String)?]?,
11
+ extra_headers: ::Hash[String, String?]?,
12
+ extra_body: top?,
13
+ max_retries: Integer?,
14
+ timeout: Float?
15
+ }
16
+
17
+ class RequestOptions < SportsOddsAPI::Internal::Type::BaseModel
18
+ def self.validate!: (SportsOddsAPI::request_opts opts) -> void
19
+
20
+ attr_accessor idempotency_key: String?
21
+
22
+ attr_accessor extra_query: ::Hash[String, (::Array[String] | String)?]?
23
+
24
+ attr_accessor extra_headers: ::Hash[String, String?]?
25
+
26
+ attr_accessor extra_body: top?
27
+
28
+ attr_accessor max_retries: Integer?
29
+
30
+ attr_accessor timeout: Float?
31
+
32
+ def initialize: (
33
+ ?SportsOddsAPI::request_options | ::Hash[Symbol, top] values
34
+ ) -> void
35
+ end
36
+ end
@@ -0,0 +1,11 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Account
4
+ def get_usage: (
5
+ ?request_options: SportsOddsAPI::request_opts
6
+ ) -> SportsOddsAPI::AccountUsage
7
+
8
+ def initialize: (client: SportsOddsAPI::Client) -> void
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,32 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Events
4
+ def get: (
5
+ ?bookmaker_id: String,
6
+ ?cancelled: bool,
7
+ ?cursor: String,
8
+ ?ended: bool,
9
+ ?event_id: String,
10
+ ?finalized: bool,
11
+ ?include_alt_lines: bool,
12
+ ?include_opposing_odds: bool,
13
+ ?league_id: String,
14
+ ?limit: Float,
15
+ ?live: bool,
16
+ ?odd_id: String,
17
+ ?odds_available: bool,
18
+ ?odds_present: bool,
19
+ ?player_id: String,
20
+ ?sport_id: String,
21
+ ?started: bool,
22
+ ?starts_after: Time,
23
+ ?starts_before: Time,
24
+ ?team_id: String,
25
+ ?type: String,
26
+ ?request_options: SportsOddsAPI::request_opts
27
+ ) -> SportsOddsAPI::Internal::NextCursorPage[SportsOddsAPI::Event]
28
+
29
+ def initialize: (client: SportsOddsAPI::Client) -> void
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Leagues
4
+ def get: (
5
+ ?league_id: String,
6
+ ?sport_id: String,
7
+ ?request_options: SportsOddsAPI::request_opts
8
+ ) -> SportsOddsAPI::Models::league_get_response
9
+
10
+ def initialize: (client: SportsOddsAPI::Client) -> void
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,16 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Players
4
+ def get: (
5
+ ?cursor: String,
6
+ ?event_id: String,
7
+ ?limit: Float,
8
+ ?player_id: String,
9
+ ?team_id: String,
10
+ ?request_options: SportsOddsAPI::request_opts
11
+ ) -> SportsOddsAPI::Internal::NextCursorPage[SportsOddsAPI::Player]
12
+
13
+ def initialize: (client: SportsOddsAPI::Client) -> void
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,11 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Sports
4
+ def get: (
5
+ ?request_options: SportsOddsAPI::request_opts
6
+ ) -> SportsOddsAPI::Models::sport_get_response
7
+
8
+ def initialize: (client: SportsOddsAPI::Client) -> void
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,14 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Stats
4
+ def get: (
5
+ ?sport_id: String,
6
+ ?stat_id: String,
7
+ ?stat_level: String,
8
+ ?request_options: SportsOddsAPI::request_opts
9
+ ) -> SportsOddsAPI::Models::stat_get_response
10
+
11
+ def initialize: (client: SportsOddsAPI::Client) -> void
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Stream
4
+ def events: (
5
+ ?event_id: String,
6
+ ?feed: String,
7
+ ?league_id: String,
8
+ ?request_options: SportsOddsAPI::request_opts
9
+ ) -> SportsOddsAPI::Models::StreamEventsResponse
10
+
11
+ def initialize: (client: SportsOddsAPI::Client) -> void
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,16 @@
1
+ module SportsOddsAPI
2
+ module Resources
3
+ class Teams
4
+ def get: (
5
+ ?cursor: String,
6
+ ?league_id: String,
7
+ ?limit: Float,
8
+ ?sport_id: String,
9
+ ?team_id: String,
10
+ ?request_options: SportsOddsAPI::request_opts
11
+ ) -> SportsOddsAPI::Internal::NextCursorPage[SportsOddsAPI::Team]
12
+
13
+ def initialize: (client: SportsOddsAPI::Client) -> void
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,3 @@
1
+ module SportsOddsAPI
2
+ VERSION: String
3
+ end
metadata ADDED
@@ -0,0 +1,215 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sports-odds-api
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Sports Game Odds
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2025-09-23 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: connection_pool
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ description:
28
+ email: api@sportsgameodds.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files:
32
+ - README.md
33
+ files:
34
+ - ".ignore"
35
+ - CHANGELOG.md
36
+ - README.md
37
+ - SECURITY.md
38
+ - lib/sports_odds_api.rb
39
+ - lib/sports_odds_api/client.rb
40
+ - lib/sports_odds_api/errors.rb
41
+ - lib/sports_odds_api/file_part.rb
42
+ - lib/sports_odds_api/internal.rb
43
+ - lib/sports_odds_api/internal/next_cursor_page.rb
44
+ - lib/sports_odds_api/internal/transport/base_client.rb
45
+ - lib/sports_odds_api/internal/transport/pooled_net_requester.rb
46
+ - lib/sports_odds_api/internal/type/array_of.rb
47
+ - lib/sports_odds_api/internal/type/base_model.rb
48
+ - lib/sports_odds_api/internal/type/base_page.rb
49
+ - lib/sports_odds_api/internal/type/boolean.rb
50
+ - lib/sports_odds_api/internal/type/converter.rb
51
+ - lib/sports_odds_api/internal/type/enum.rb
52
+ - lib/sports_odds_api/internal/type/file_input.rb
53
+ - lib/sports_odds_api/internal/type/hash_of.rb
54
+ - lib/sports_odds_api/internal/type/request_parameters.rb
55
+ - lib/sports_odds_api/internal/type/union.rb
56
+ - lib/sports_odds_api/internal/type/unknown.rb
57
+ - lib/sports_odds_api/internal/util.rb
58
+ - lib/sports_odds_api/models.rb
59
+ - lib/sports_odds_api/models/account_get_usage_params.rb
60
+ - lib/sports_odds_api/models/account_usage.rb
61
+ - lib/sports_odds_api/models/event.rb
62
+ - lib/sports_odds_api/models/event_get_params.rb
63
+ - lib/sports_odds_api/models/league.rb
64
+ - lib/sports_odds_api/models/league_get_params.rb
65
+ - lib/sports_odds_api/models/league_get_response.rb
66
+ - lib/sports_odds_api/models/player.rb
67
+ - lib/sports_odds_api/models/player_get_params.rb
68
+ - lib/sports_odds_api/models/rate_limit_interval.rb
69
+ - lib/sports_odds_api/models/sport.rb
70
+ - lib/sports_odds_api/models/sport_get_params.rb
71
+ - lib/sports_odds_api/models/sport_get_response.rb
72
+ - lib/sports_odds_api/models/stat.rb
73
+ - lib/sports_odds_api/models/stat_get_params.rb
74
+ - lib/sports_odds_api/models/stat_get_response.rb
75
+ - lib/sports_odds_api/models/stream_events_params.rb
76
+ - lib/sports_odds_api/models/stream_events_response.rb
77
+ - lib/sports_odds_api/models/team.rb
78
+ - lib/sports_odds_api/models/team_get_params.rb
79
+ - lib/sports_odds_api/request_options.rb
80
+ - lib/sports_odds_api/resources/account.rb
81
+ - lib/sports_odds_api/resources/events.rb
82
+ - lib/sports_odds_api/resources/leagues.rb
83
+ - lib/sports_odds_api/resources/players.rb
84
+ - lib/sports_odds_api/resources/sports.rb
85
+ - lib/sports_odds_api/resources/stats.rb
86
+ - lib/sports_odds_api/resources/stream.rb
87
+ - lib/sports_odds_api/resources/teams.rb
88
+ - lib/sports_odds_api/version.rb
89
+ - manifest.yaml
90
+ - rbi/sports_odds_api/client.rbi
91
+ - rbi/sports_odds_api/errors.rbi
92
+ - rbi/sports_odds_api/file_part.rbi
93
+ - rbi/sports_odds_api/internal.rbi
94
+ - rbi/sports_odds_api/internal/next_cursor_page.rbi
95
+ - rbi/sports_odds_api/internal/transport/base_client.rbi
96
+ - rbi/sports_odds_api/internal/transport/pooled_net_requester.rbi
97
+ - rbi/sports_odds_api/internal/type/array_of.rbi
98
+ - rbi/sports_odds_api/internal/type/base_model.rbi
99
+ - rbi/sports_odds_api/internal/type/base_page.rbi
100
+ - rbi/sports_odds_api/internal/type/boolean.rbi
101
+ - rbi/sports_odds_api/internal/type/converter.rbi
102
+ - rbi/sports_odds_api/internal/type/enum.rbi
103
+ - rbi/sports_odds_api/internal/type/file_input.rbi
104
+ - rbi/sports_odds_api/internal/type/hash_of.rbi
105
+ - rbi/sports_odds_api/internal/type/request_parameters.rbi
106
+ - rbi/sports_odds_api/internal/type/union.rbi
107
+ - rbi/sports_odds_api/internal/type/unknown.rbi
108
+ - rbi/sports_odds_api/internal/util.rbi
109
+ - rbi/sports_odds_api/models.rbi
110
+ - rbi/sports_odds_api/models/account_get_usage_params.rbi
111
+ - rbi/sports_odds_api/models/account_usage.rbi
112
+ - rbi/sports_odds_api/models/event.rbi
113
+ - rbi/sports_odds_api/models/event_get_params.rbi
114
+ - rbi/sports_odds_api/models/league.rbi
115
+ - rbi/sports_odds_api/models/league_get_params.rbi
116
+ - rbi/sports_odds_api/models/league_get_response.rbi
117
+ - rbi/sports_odds_api/models/player.rbi
118
+ - rbi/sports_odds_api/models/player_get_params.rbi
119
+ - rbi/sports_odds_api/models/rate_limit_interval.rbi
120
+ - rbi/sports_odds_api/models/sport.rbi
121
+ - rbi/sports_odds_api/models/sport_get_params.rbi
122
+ - rbi/sports_odds_api/models/sport_get_response.rbi
123
+ - rbi/sports_odds_api/models/stat.rbi
124
+ - rbi/sports_odds_api/models/stat_get_params.rbi
125
+ - rbi/sports_odds_api/models/stat_get_response.rbi
126
+ - rbi/sports_odds_api/models/stream_events_params.rbi
127
+ - rbi/sports_odds_api/models/stream_events_response.rbi
128
+ - rbi/sports_odds_api/models/team.rbi
129
+ - rbi/sports_odds_api/models/team_get_params.rbi
130
+ - rbi/sports_odds_api/request_options.rbi
131
+ - rbi/sports_odds_api/resources/account.rbi
132
+ - rbi/sports_odds_api/resources/events.rbi
133
+ - rbi/sports_odds_api/resources/leagues.rbi
134
+ - rbi/sports_odds_api/resources/players.rbi
135
+ - rbi/sports_odds_api/resources/sports.rbi
136
+ - rbi/sports_odds_api/resources/stats.rbi
137
+ - rbi/sports_odds_api/resources/stream.rbi
138
+ - rbi/sports_odds_api/resources/teams.rbi
139
+ - rbi/sports_odds_api/version.rbi
140
+ - sig/sports_odds_api/client.rbs
141
+ - sig/sports_odds_api/errors.rbs
142
+ - sig/sports_odds_api/file_part.rbs
143
+ - sig/sports_odds_api/internal.rbs
144
+ - sig/sports_odds_api/internal/next_cursor_page.rbs
145
+ - sig/sports_odds_api/internal/transport/base_client.rbs
146
+ - sig/sports_odds_api/internal/transport/pooled_net_requester.rbs
147
+ - sig/sports_odds_api/internal/type/array_of.rbs
148
+ - sig/sports_odds_api/internal/type/base_model.rbs
149
+ - sig/sports_odds_api/internal/type/base_page.rbs
150
+ - sig/sports_odds_api/internal/type/boolean.rbs
151
+ - sig/sports_odds_api/internal/type/converter.rbs
152
+ - sig/sports_odds_api/internal/type/enum.rbs
153
+ - sig/sports_odds_api/internal/type/file_input.rbs
154
+ - sig/sports_odds_api/internal/type/hash_of.rbs
155
+ - sig/sports_odds_api/internal/type/request_parameters.rbs
156
+ - sig/sports_odds_api/internal/type/union.rbs
157
+ - sig/sports_odds_api/internal/type/unknown.rbs
158
+ - sig/sports_odds_api/internal/util.rbs
159
+ - sig/sports_odds_api/models.rbs
160
+ - sig/sports_odds_api/models/account_get_usage_params.rbs
161
+ - sig/sports_odds_api/models/account_usage.rbs
162
+ - sig/sports_odds_api/models/event.rbs
163
+ - sig/sports_odds_api/models/event_get_params.rbs
164
+ - sig/sports_odds_api/models/league.rbs
165
+ - sig/sports_odds_api/models/league_get_params.rbs
166
+ - sig/sports_odds_api/models/league_get_response.rbs
167
+ - sig/sports_odds_api/models/player.rbs
168
+ - sig/sports_odds_api/models/player_get_params.rbs
169
+ - sig/sports_odds_api/models/rate_limit_interval.rbs
170
+ - sig/sports_odds_api/models/sport.rbs
171
+ - sig/sports_odds_api/models/sport_get_params.rbs
172
+ - sig/sports_odds_api/models/sport_get_response.rbs
173
+ - sig/sports_odds_api/models/stat.rbs
174
+ - sig/sports_odds_api/models/stat_get_params.rbs
175
+ - sig/sports_odds_api/models/stat_get_response.rbs
176
+ - sig/sports_odds_api/models/stream_events_params.rbs
177
+ - sig/sports_odds_api/models/stream_events_response.rbs
178
+ - sig/sports_odds_api/models/team.rbs
179
+ - sig/sports_odds_api/models/team_get_params.rbs
180
+ - sig/sports_odds_api/request_options.rbs
181
+ - sig/sports_odds_api/resources/account.rbs
182
+ - sig/sports_odds_api/resources/events.rbs
183
+ - sig/sports_odds_api/resources/leagues.rbs
184
+ - sig/sports_odds_api/resources/players.rbs
185
+ - sig/sports_odds_api/resources/sports.rbs
186
+ - sig/sports_odds_api/resources/stats.rbs
187
+ - sig/sports_odds_api/resources/stream.rbs
188
+ - sig/sports_odds_api/resources/teams.rbs
189
+ - sig/sports_odds_api/version.rbs
190
+ homepage: https://gemdocs.org/gems/sports-odds-api
191
+ licenses: []
192
+ metadata:
193
+ homepage_uri: https://gemdocs.org/gems/sports-odds-api
194
+ source_code_uri: https://github.com/SportsGameOdds/sports-odds-api-ruby
195
+ rubygems_mfa_required: 'false'
196
+ post_install_message:
197
+ rdoc_options: []
198
+ require_paths:
199
+ - lib
200
+ required_ruby_version: !ruby/object:Gem::Requirement
201
+ requirements:
202
+ - - ">="
203
+ - !ruby/object:Gem::Version
204
+ version: 3.2.0
205
+ required_rubygems_version: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ requirements: []
211
+ rubygems_version: 3.4.1
212
+ signing_key:
213
+ specification_version: 4
214
+ summary: Ruby library to access the Sports Game Odds API
215
+ test_files: []