victorycode-sdk 1.0.0__py3-none-any.whl
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.
- victorycode_sdk/__init__.py +260 -0
- victorycode_sdk/api/__init__.py +13 -0
- victorycode_sdk/api/authentication_api.py +285 -0
- victorycode_sdk/api/classification_api.py +1203 -0
- victorycode_sdk/api/game_recap_api.py +1395 -0
- victorycode_sdk/api/games_api.py +1497 -0
- victorycode_sdk/api/mascot_api.py +1203 -0
- victorycode_sdk/api/plays_events_api.py +1057 -0
- victorycode_sdk/api/teams_api.py +1220 -0
- victorycode_sdk/api/uploads_api.py +872 -0
- victorycode_sdk/api/venue_api.py +1203 -0
- victorycode_sdk/api_client.py +833 -0
- victorycode_sdk/api_response.py +21 -0
- victorycode_sdk/configuration.py +698 -0
- victorycode_sdk/exceptions.py +218 -0
- victorycode_sdk/models/__init__.py +114 -0
- victorycode_sdk/models/add_video_to_game_with_s3_link_dto.py +90 -0
- victorycode_sdk/models/address.py +96 -0
- victorycode_sdk/models/address_dto.py +96 -0
- victorycode_sdk/models/bad_request_error_response_dto.py +90 -0
- victorycode_sdk/models/classification.py +90 -0
- victorycode_sdk/models/client_create_game_with_video_url_dto.py +130 -0
- victorycode_sdk/models/complete_multipart_upload_dto.py +97 -0
- victorycode_sdk/models/complete_multipart_upload_response.py +90 -0
- victorycode_sdk/models/complete_multipart_upload_response_dto.py +94 -0
- victorycode_sdk/models/completed_part_dto.py +90 -0
- victorycode_sdk/models/conflict_error_response_dto.py +90 -0
- victorycode_sdk/models/coordinates.py +90 -0
- victorycode_sdk/models/coordinates_dto.py +90 -0
- victorycode_sdk/models/create_classification_dto.py +90 -0
- victorycode_sdk/models/create_mascot_dto.py +90 -0
- victorycode_sdk/models/create_team_dto.py +108 -0
- victorycode_sdk/models/create_team_response_dto.py +106 -0
- victorycode_sdk/models/create_venue_dto.py +102 -0
- victorycode_sdk/models/defense_section_dto.py +101 -0
- victorycode_sdk/models/defense_stats_dto.py +106 -0
- victorycode_sdk/models/defense_totals_dto.py +100 -0
- victorycode_sdk/models/delete_response_dto.py +90 -0
- victorycode_sdk/models/down_efficiency_dto.py +90 -0
- victorycode_sdk/models/fetch_team_response_dto.py +117 -0
- victorycode_sdk/models/fumble_section_dto.py +101 -0
- victorycode_sdk/models/fumble_stats_dto.py +98 -0
- victorycode_sdk/models/fumble_totals_dto.py +92 -0
- victorycode_sdk/models/game_all_play_list_item_dto.py +106 -0
- victorycode_sdk/models/game_box_score_meta_dto.py +104 -0
- victorycode_sdk/models/game_box_score_response_dto.py +98 -0
- victorycode_sdk/models/game_box_score_teams_dto.py +97 -0
- victorycode_sdk/models/game_details_response.py +108 -0
- victorycode_sdk/models/game_recap_scoring_summary_pro_response.py +101 -0
- victorycode_sdk/models/game_recap_scoring_summary_response.py +101 -0
- victorycode_sdk/models/game_recap_team_stats_response.py +101 -0
- victorycode_sdk/models/game_score_response.py +101 -0
- victorycode_sdk/models/game_scoring_summary_data_dto.py +104 -0
- victorycode_sdk/models/get_parts_presign_url_response.py +88 -0
- victorycode_sdk/models/get_parts_presign_url_response_dto.py +94 -0
- victorycode_sdk/models/initiate_multipart_upload_dto.py +92 -0
- victorycode_sdk/models/initiate_multipart_upload_response.py +88 -0
- victorycode_sdk/models/initiate_multipart_upload_response_dto.py +94 -0
- victorycode_sdk/models/interception_section_dto.py +101 -0
- victorycode_sdk/models/interception_stats_dto.py +98 -0
- victorycode_sdk/models/interception_totals_dto.py +92 -0
- victorycode_sdk/models/kicking_section_dto.py +101 -0
- victorycode_sdk/models/kicking_stats_dto.py +106 -0
- victorycode_sdk/models/kicking_totals_dto.py +100 -0
- victorycode_sdk/models/line_of_scrimmage_dto.py +90 -0
- victorycode_sdk/models/list_classification_paginated_response_dto.py +101 -0
- victorycode_sdk/models/list_game_all_plays_response_dto.py +103 -0
- victorycode_sdk/models/list_games_paginated_response_dto.py +101 -0
- victorycode_sdk/models/list_mascot_paginated_response_dto.py +101 -0
- victorycode_sdk/models/list_play_clips_response_dto.py +105 -0
- victorycode_sdk/models/list_team_paginated_response_dto.py +101 -0
- victorycode_sdk/models/list_venue_paginated_response_dto.py +101 -0
- victorycode_sdk/models/list_video_paginated_response_dto.py +103 -0
- victorycode_sdk/models/mascot.py +90 -0
- victorycode_sdk/models/mascot_response_dto.py +96 -0
- victorycode_sdk/models/not_found_error_response_dto.py +90 -0
- victorycode_sdk/models/offense_dto.py +92 -0
- victorycode_sdk/models/passing_dto.py +98 -0
- victorycode_sdk/models/passing_section_dto.py +101 -0
- victorycode_sdk/models/passing_stats_dto.py +117 -0
- victorycode_sdk/models/passing_totals_dto.py +111 -0
- victorycode_sdk/models/period_score_dto.py +94 -0
- victorycode_sdk/models/play_attributes_list_dto.py +106 -0
- victorycode_sdk/models/play_clip_list_details_dto.py +104 -0
- victorycode_sdk/models/play_clip_list_item_dto.py +104 -0
- victorycode_sdk/models/pro_scoring_play_dto.py +202 -0
- victorycode_sdk/models/receiving_section_dto.py +101 -0
- victorycode_sdk/models/receiving_stats_dto.py +104 -0
- victorycode_sdk/models/receiving_totals_dto.py +98 -0
- victorycode_sdk/models/red_zone_dto.py +90 -0
- victorycode_sdk/models/rushing_dto.py +92 -0
- victorycode_sdk/models/rushing_section_dto.py +101 -0
- victorycode_sdk/models/rushing_stats_dto.py +102 -0
- victorycode_sdk/models/rushing_totals_dto.py +96 -0
- victorycode_sdk/models/scoring_play_player_involved_dto.py +106 -0
- victorycode_sdk/models/scoring_summary_pro_team_dto.py +90 -0
- victorycode_sdk/models/single_classification_response_dto.py +94 -0
- victorycode_sdk/models/single_mascot_response_dto.py +94 -0
- victorycode_sdk/models/single_team_response_dto.py +94 -0
- victorycode_sdk/models/single_venue_response_dto.py +99 -0
- victorycode_sdk/models/single_video_response_dto.py +94 -0
- victorycode_sdk/models/team_basic_info_dto.py +96 -0
- victorycode_sdk/models/team_box_score_dto.py +139 -0
- victorycode_sdk/models/team_score_dto.py +109 -0
- victorycode_sdk/models/team_stats_dto.py +137 -0
- victorycode_sdk/models/token_response.py +92 -0
- victorycode_sdk/models/turnovers_dto.py +92 -0
- victorycode_sdk/models/unauthorized_error_response_dto.py +90 -0
- victorycode_sdk/models/update_classification_dto.py +90 -0
- victorycode_sdk/models/update_mascot_dto.py +90 -0
- victorycode_sdk/models/update_team_dto.py +108 -0
- victorycode_sdk/models/update_venue_dto.py +102 -0
- victorycode_sdk/models/venue.py +102 -0
- victorycode_sdk/models/video_list_item_dto.py +96 -0
- victorycode_sdk/py.typed +0 -0
- victorycode_sdk/rest.py +334 -0
- victorycode_sdk-1.0.0.dist-info/METADATA +288 -0
- victorycode_sdk-1.0.0.dist-info/RECORD +121 -0
- victorycode_sdk-1.0.0.dist-info/WHEEL +5 -0
- victorycode_sdk-1.0.0.dist-info/licenses/LICENSE +21 -0
- victorycode_sdk-1.0.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,1057 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Victory Code Client API
|
|
3
|
+
|
|
4
|
+
Client APIs for Tactix partners: authenticate, upload game video, and retrieve games, plays, game recaps and team metadata.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0
|
|
7
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
8
|
+
|
|
9
|
+
Do not edit the class manually.
|
|
10
|
+
""" # noqa: E501
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
import warnings
|
|
14
|
+
from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
|
15
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
16
|
+
from typing_extensions import Annotated
|
|
17
|
+
|
|
18
|
+
from pydantic import Field, StrictFloat, StrictInt, StrictStr, field_validator
|
|
19
|
+
from typing import Optional, Union
|
|
20
|
+
from typing_extensions import Annotated
|
|
21
|
+
from victorycode_sdk.models.list_game_all_plays_response_dto import ListGameAllPlaysResponseDto
|
|
22
|
+
from victorycode_sdk.models.list_play_clips_response_dto import ListPlayClipsResponseDto
|
|
23
|
+
from victorycode_sdk.models.play_clip_list_item_dto import PlayClipListItemDto
|
|
24
|
+
|
|
25
|
+
from victorycode_sdk.api_client import ApiClient, RequestSerialized
|
|
26
|
+
from victorycode_sdk.api_response import ApiResponse
|
|
27
|
+
from victorycode_sdk.rest import RESTResponseType
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class PlaysEventsApi:
|
|
31
|
+
"""NOTE: This class is auto generated by OpenAPI Generator
|
|
32
|
+
Ref: https://openapi-generator.tech
|
|
33
|
+
|
|
34
|
+
Do not edit the class manually.
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
def __init__(self, api_client=None) -> None:
|
|
38
|
+
if api_client is None:
|
|
39
|
+
api_client = ApiClient.get_default()
|
|
40
|
+
self.api_client = api_client
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
@validate_call
|
|
44
|
+
def get_play_by_id(
|
|
45
|
+
self,
|
|
46
|
+
play_id: StrictStr,
|
|
47
|
+
_request_timeout: Union[
|
|
48
|
+
None,
|
|
49
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
50
|
+
Tuple[
|
|
51
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
52
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
53
|
+
]
|
|
54
|
+
] = None,
|
|
55
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
56
|
+
_content_type: Optional[StrictStr] = None,
|
|
57
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
58
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
59
|
+
) -> PlayClipListItemDto:
|
|
60
|
+
"""Get the single Play Clip
|
|
61
|
+
|
|
62
|
+
Retrieves the complete metadata for a single play clip by its unique ID.
|
|
63
|
+
|
|
64
|
+
:param play_id: (required)
|
|
65
|
+
:type play_id: str
|
|
66
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
67
|
+
number provided, it will be total request
|
|
68
|
+
timeout. It can also be a pair (tuple) of
|
|
69
|
+
(connection, read) timeouts.
|
|
70
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
71
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
72
|
+
request; this effectively ignores the
|
|
73
|
+
authentication in the spec for a single request.
|
|
74
|
+
:type _request_auth: dict, optional
|
|
75
|
+
:param _content_type: force content-type for the request.
|
|
76
|
+
:type _content_type: str, Optional
|
|
77
|
+
:param _headers: set to override the headers for a single
|
|
78
|
+
request; this effectively ignores the headers
|
|
79
|
+
in the spec for a single request.
|
|
80
|
+
:type _headers: dict, optional
|
|
81
|
+
:param _host_index: set to override the host_index for a single
|
|
82
|
+
request; this effectively ignores the host_index
|
|
83
|
+
in the spec for a single request.
|
|
84
|
+
:type _host_index: int, optional
|
|
85
|
+
:return: Returns the result object.
|
|
86
|
+
""" # noqa: E501
|
|
87
|
+
|
|
88
|
+
_param = self._get_play_by_id_serialize(
|
|
89
|
+
play_id=play_id,
|
|
90
|
+
_request_auth=_request_auth,
|
|
91
|
+
_content_type=_content_type,
|
|
92
|
+
_headers=_headers,
|
|
93
|
+
_host_index=_host_index
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
97
|
+
'200': "PlayClipListItemDto",
|
|
98
|
+
'400': "BadRequestErrorResponseDto",
|
|
99
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
100
|
+
'404': "NotFoundErrorResponseDto",
|
|
101
|
+
}
|
|
102
|
+
response_data = self.api_client.call_api(
|
|
103
|
+
*_param,
|
|
104
|
+
_request_timeout=_request_timeout
|
|
105
|
+
)
|
|
106
|
+
response_data.read()
|
|
107
|
+
return self.api_client.response_deserialize(
|
|
108
|
+
response_data=response_data,
|
|
109
|
+
response_types_map=_response_types_map,
|
|
110
|
+
).data
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
@validate_call
|
|
114
|
+
def get_play_by_id_with_http_info(
|
|
115
|
+
self,
|
|
116
|
+
play_id: StrictStr,
|
|
117
|
+
_request_timeout: Union[
|
|
118
|
+
None,
|
|
119
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
120
|
+
Tuple[
|
|
121
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
122
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
123
|
+
]
|
|
124
|
+
] = None,
|
|
125
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
126
|
+
_content_type: Optional[StrictStr] = None,
|
|
127
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
128
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
129
|
+
) -> ApiResponse[PlayClipListItemDto]:
|
|
130
|
+
"""Get the single Play Clip
|
|
131
|
+
|
|
132
|
+
Retrieves the complete metadata for a single play clip by its unique ID.
|
|
133
|
+
|
|
134
|
+
:param play_id: (required)
|
|
135
|
+
:type play_id: str
|
|
136
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
137
|
+
number provided, it will be total request
|
|
138
|
+
timeout. It can also be a pair (tuple) of
|
|
139
|
+
(connection, read) timeouts.
|
|
140
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
141
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
142
|
+
request; this effectively ignores the
|
|
143
|
+
authentication in the spec for a single request.
|
|
144
|
+
:type _request_auth: dict, optional
|
|
145
|
+
:param _content_type: force content-type for the request.
|
|
146
|
+
:type _content_type: str, Optional
|
|
147
|
+
:param _headers: set to override the headers for a single
|
|
148
|
+
request; this effectively ignores the headers
|
|
149
|
+
in the spec for a single request.
|
|
150
|
+
:type _headers: dict, optional
|
|
151
|
+
:param _host_index: set to override the host_index for a single
|
|
152
|
+
request; this effectively ignores the host_index
|
|
153
|
+
in the spec for a single request.
|
|
154
|
+
:type _host_index: int, optional
|
|
155
|
+
:return: Returns the result object.
|
|
156
|
+
""" # noqa: E501
|
|
157
|
+
|
|
158
|
+
_param = self._get_play_by_id_serialize(
|
|
159
|
+
play_id=play_id,
|
|
160
|
+
_request_auth=_request_auth,
|
|
161
|
+
_content_type=_content_type,
|
|
162
|
+
_headers=_headers,
|
|
163
|
+
_host_index=_host_index
|
|
164
|
+
)
|
|
165
|
+
|
|
166
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
167
|
+
'200': "PlayClipListItemDto",
|
|
168
|
+
'400': "BadRequestErrorResponseDto",
|
|
169
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
170
|
+
'404': "NotFoundErrorResponseDto",
|
|
171
|
+
}
|
|
172
|
+
response_data = self.api_client.call_api(
|
|
173
|
+
*_param,
|
|
174
|
+
_request_timeout=_request_timeout
|
|
175
|
+
)
|
|
176
|
+
response_data.read()
|
|
177
|
+
return self.api_client.response_deserialize(
|
|
178
|
+
response_data=response_data,
|
|
179
|
+
response_types_map=_response_types_map,
|
|
180
|
+
)
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
@validate_call
|
|
184
|
+
def get_play_by_id_without_preload_content(
|
|
185
|
+
self,
|
|
186
|
+
play_id: StrictStr,
|
|
187
|
+
_request_timeout: Union[
|
|
188
|
+
None,
|
|
189
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
190
|
+
Tuple[
|
|
191
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
192
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
193
|
+
]
|
|
194
|
+
] = None,
|
|
195
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
196
|
+
_content_type: Optional[StrictStr] = None,
|
|
197
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
198
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
199
|
+
) -> RESTResponseType:
|
|
200
|
+
"""Get the single Play Clip
|
|
201
|
+
|
|
202
|
+
Retrieves the complete metadata for a single play clip by its unique ID.
|
|
203
|
+
|
|
204
|
+
:param play_id: (required)
|
|
205
|
+
:type play_id: str
|
|
206
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
207
|
+
number provided, it will be total request
|
|
208
|
+
timeout. It can also be a pair (tuple) of
|
|
209
|
+
(connection, read) timeouts.
|
|
210
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
211
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
212
|
+
request; this effectively ignores the
|
|
213
|
+
authentication in the spec for a single request.
|
|
214
|
+
:type _request_auth: dict, optional
|
|
215
|
+
:param _content_type: force content-type for the request.
|
|
216
|
+
:type _content_type: str, Optional
|
|
217
|
+
:param _headers: set to override the headers for a single
|
|
218
|
+
request; this effectively ignores the headers
|
|
219
|
+
in the spec for a single request.
|
|
220
|
+
:type _headers: dict, optional
|
|
221
|
+
:param _host_index: set to override the host_index for a single
|
|
222
|
+
request; this effectively ignores the host_index
|
|
223
|
+
in the spec for a single request.
|
|
224
|
+
:type _host_index: int, optional
|
|
225
|
+
:return: Returns the result object.
|
|
226
|
+
""" # noqa: E501
|
|
227
|
+
|
|
228
|
+
_param = self._get_play_by_id_serialize(
|
|
229
|
+
play_id=play_id,
|
|
230
|
+
_request_auth=_request_auth,
|
|
231
|
+
_content_type=_content_type,
|
|
232
|
+
_headers=_headers,
|
|
233
|
+
_host_index=_host_index
|
|
234
|
+
)
|
|
235
|
+
|
|
236
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
237
|
+
'200': "PlayClipListItemDto",
|
|
238
|
+
'400': "BadRequestErrorResponseDto",
|
|
239
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
240
|
+
'404': "NotFoundErrorResponseDto",
|
|
241
|
+
}
|
|
242
|
+
response_data = self.api_client.call_api(
|
|
243
|
+
*_param,
|
|
244
|
+
_request_timeout=_request_timeout
|
|
245
|
+
)
|
|
246
|
+
return response_data.response
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
def _get_play_by_id_serialize(
|
|
250
|
+
self,
|
|
251
|
+
play_id,
|
|
252
|
+
_request_auth,
|
|
253
|
+
_content_type,
|
|
254
|
+
_headers,
|
|
255
|
+
_host_index,
|
|
256
|
+
) -> RequestSerialized:
|
|
257
|
+
|
|
258
|
+
_host = None
|
|
259
|
+
|
|
260
|
+
_collection_formats: Dict[str, str] = {
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
_path_params: Dict[str, str] = {}
|
|
264
|
+
_query_params: List[Tuple[str, str]] = []
|
|
265
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
266
|
+
_form_params: List[Tuple[str, str]] = []
|
|
267
|
+
_files: Dict[
|
|
268
|
+
str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
|
|
269
|
+
] = {}
|
|
270
|
+
_body_params: Optional[bytes] = None
|
|
271
|
+
|
|
272
|
+
# process the path parameters
|
|
273
|
+
if play_id is not None:
|
|
274
|
+
_path_params['playId'] = play_id
|
|
275
|
+
# process the query parameters
|
|
276
|
+
# process the header parameters
|
|
277
|
+
# process the form parameters
|
|
278
|
+
# process the body parameter
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
# set the HTTP header `Accept`
|
|
282
|
+
if 'Accept' not in _header_params:
|
|
283
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
284
|
+
[
|
|
285
|
+
'application/json'
|
|
286
|
+
]
|
|
287
|
+
)
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
# authentication setting
|
|
291
|
+
_auth_settings: List[str] = [
|
|
292
|
+
'Client-App-Token',
|
|
293
|
+
'Client-App-Id'
|
|
294
|
+
]
|
|
295
|
+
|
|
296
|
+
return self.api_client.param_serialize(
|
|
297
|
+
method='GET',
|
|
298
|
+
resource_path='/api/v1/client/plays/{playId}',
|
|
299
|
+
path_params=_path_params,
|
|
300
|
+
query_params=_query_params,
|
|
301
|
+
header_params=_header_params,
|
|
302
|
+
body=_body_params,
|
|
303
|
+
post_params=_form_params,
|
|
304
|
+
files=_files,
|
|
305
|
+
auth_settings=_auth_settings,
|
|
306
|
+
collection_formats=_collection_formats,
|
|
307
|
+
_host=_host,
|
|
308
|
+
_request_auth=_request_auth
|
|
309
|
+
)
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
@validate_call
|
|
315
|
+
def get_plays_of_game(
|
|
316
|
+
self,
|
|
317
|
+
game_id: StrictStr,
|
|
318
|
+
limit: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to return per page.")] = None,
|
|
319
|
+
offset: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to skip for pagination.")] = None,
|
|
320
|
+
search: Optional[StrictStr] = None,
|
|
321
|
+
down: Annotated[Optional[StrictStr], Field(description="Filter by down number")] = None,
|
|
322
|
+
distance_zone: Annotated[Optional[StrictStr], Field(description="Filter by distance zone (yards to go)")] = None,
|
|
323
|
+
play_type: Annotated[Optional[StrictStr], Field(description="Filter by analyzed play type")] = None,
|
|
324
|
+
_request_timeout: Union[
|
|
325
|
+
None,
|
|
326
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
327
|
+
Tuple[
|
|
328
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
329
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
330
|
+
]
|
|
331
|
+
] = None,
|
|
332
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
333
|
+
_content_type: Optional[StrictStr] = None,
|
|
334
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
335
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
336
|
+
) -> ListGameAllPlaysResponseDto:
|
|
337
|
+
"""Get a list of all plays for a game
|
|
338
|
+
|
|
339
|
+
Retrieves a paginated list of all plays for a given game. The results can be filtered by various play attributes.
|
|
340
|
+
|
|
341
|
+
:param game_id: (required)
|
|
342
|
+
:type game_id: str
|
|
343
|
+
:param limit: The number of results to return per page.
|
|
344
|
+
:type limit: float
|
|
345
|
+
:param offset: The number of results to skip for pagination.
|
|
346
|
+
:type offset: float
|
|
347
|
+
:param search:
|
|
348
|
+
:type search: str
|
|
349
|
+
:param down: Filter by down number
|
|
350
|
+
:type down: str
|
|
351
|
+
:param distance_zone: Filter by distance zone (yards to go)
|
|
352
|
+
:type distance_zone: str
|
|
353
|
+
:param play_type: Filter by analyzed play type
|
|
354
|
+
:type play_type: str
|
|
355
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
356
|
+
number provided, it will be total request
|
|
357
|
+
timeout. It can also be a pair (tuple) of
|
|
358
|
+
(connection, read) timeouts.
|
|
359
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
360
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
361
|
+
request; this effectively ignores the
|
|
362
|
+
authentication in the spec for a single request.
|
|
363
|
+
:type _request_auth: dict, optional
|
|
364
|
+
:param _content_type: force content-type for the request.
|
|
365
|
+
:type _content_type: str, Optional
|
|
366
|
+
:param _headers: set to override the headers for a single
|
|
367
|
+
request; this effectively ignores the headers
|
|
368
|
+
in the spec for a single request.
|
|
369
|
+
:type _headers: dict, optional
|
|
370
|
+
:param _host_index: set to override the host_index for a single
|
|
371
|
+
request; this effectively ignores the host_index
|
|
372
|
+
in the spec for a single request.
|
|
373
|
+
:type _host_index: int, optional
|
|
374
|
+
:return: Returns the result object.
|
|
375
|
+
""" # noqa: E501
|
|
376
|
+
|
|
377
|
+
_param = self._get_plays_of_game_serialize(
|
|
378
|
+
game_id=game_id,
|
|
379
|
+
limit=limit,
|
|
380
|
+
offset=offset,
|
|
381
|
+
search=search,
|
|
382
|
+
down=down,
|
|
383
|
+
distance_zone=distance_zone,
|
|
384
|
+
play_type=play_type,
|
|
385
|
+
_request_auth=_request_auth,
|
|
386
|
+
_content_type=_content_type,
|
|
387
|
+
_headers=_headers,
|
|
388
|
+
_host_index=_host_index
|
|
389
|
+
)
|
|
390
|
+
|
|
391
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
392
|
+
'200': "ListGameAllPlaysResponseDto",
|
|
393
|
+
'400': "BadRequestErrorResponseDto",
|
|
394
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
395
|
+
'404': "NotFoundErrorResponseDto",
|
|
396
|
+
}
|
|
397
|
+
response_data = self.api_client.call_api(
|
|
398
|
+
*_param,
|
|
399
|
+
_request_timeout=_request_timeout
|
|
400
|
+
)
|
|
401
|
+
response_data.read()
|
|
402
|
+
return self.api_client.response_deserialize(
|
|
403
|
+
response_data=response_data,
|
|
404
|
+
response_types_map=_response_types_map,
|
|
405
|
+
).data
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
@validate_call
|
|
409
|
+
def get_plays_of_game_with_http_info(
|
|
410
|
+
self,
|
|
411
|
+
game_id: StrictStr,
|
|
412
|
+
limit: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to return per page.")] = None,
|
|
413
|
+
offset: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to skip for pagination.")] = None,
|
|
414
|
+
search: Optional[StrictStr] = None,
|
|
415
|
+
down: Annotated[Optional[StrictStr], Field(description="Filter by down number")] = None,
|
|
416
|
+
distance_zone: Annotated[Optional[StrictStr], Field(description="Filter by distance zone (yards to go)")] = None,
|
|
417
|
+
play_type: Annotated[Optional[StrictStr], Field(description="Filter by analyzed play type")] = None,
|
|
418
|
+
_request_timeout: Union[
|
|
419
|
+
None,
|
|
420
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
421
|
+
Tuple[
|
|
422
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
423
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
424
|
+
]
|
|
425
|
+
] = None,
|
|
426
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
427
|
+
_content_type: Optional[StrictStr] = None,
|
|
428
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
429
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
430
|
+
) -> ApiResponse[ListGameAllPlaysResponseDto]:
|
|
431
|
+
"""Get a list of all plays for a game
|
|
432
|
+
|
|
433
|
+
Retrieves a paginated list of all plays for a given game. The results can be filtered by various play attributes.
|
|
434
|
+
|
|
435
|
+
:param game_id: (required)
|
|
436
|
+
:type game_id: str
|
|
437
|
+
:param limit: The number of results to return per page.
|
|
438
|
+
:type limit: float
|
|
439
|
+
:param offset: The number of results to skip for pagination.
|
|
440
|
+
:type offset: float
|
|
441
|
+
:param search:
|
|
442
|
+
:type search: str
|
|
443
|
+
:param down: Filter by down number
|
|
444
|
+
:type down: str
|
|
445
|
+
:param distance_zone: Filter by distance zone (yards to go)
|
|
446
|
+
:type distance_zone: str
|
|
447
|
+
:param play_type: Filter by analyzed play type
|
|
448
|
+
:type play_type: str
|
|
449
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
450
|
+
number provided, it will be total request
|
|
451
|
+
timeout. It can also be a pair (tuple) of
|
|
452
|
+
(connection, read) timeouts.
|
|
453
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
454
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
455
|
+
request; this effectively ignores the
|
|
456
|
+
authentication in the spec for a single request.
|
|
457
|
+
:type _request_auth: dict, optional
|
|
458
|
+
:param _content_type: force content-type for the request.
|
|
459
|
+
:type _content_type: str, Optional
|
|
460
|
+
:param _headers: set to override the headers for a single
|
|
461
|
+
request; this effectively ignores the headers
|
|
462
|
+
in the spec for a single request.
|
|
463
|
+
:type _headers: dict, optional
|
|
464
|
+
:param _host_index: set to override the host_index for a single
|
|
465
|
+
request; this effectively ignores the host_index
|
|
466
|
+
in the spec for a single request.
|
|
467
|
+
:type _host_index: int, optional
|
|
468
|
+
:return: Returns the result object.
|
|
469
|
+
""" # noqa: E501
|
|
470
|
+
|
|
471
|
+
_param = self._get_plays_of_game_serialize(
|
|
472
|
+
game_id=game_id,
|
|
473
|
+
limit=limit,
|
|
474
|
+
offset=offset,
|
|
475
|
+
search=search,
|
|
476
|
+
down=down,
|
|
477
|
+
distance_zone=distance_zone,
|
|
478
|
+
play_type=play_type,
|
|
479
|
+
_request_auth=_request_auth,
|
|
480
|
+
_content_type=_content_type,
|
|
481
|
+
_headers=_headers,
|
|
482
|
+
_host_index=_host_index
|
|
483
|
+
)
|
|
484
|
+
|
|
485
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
486
|
+
'200': "ListGameAllPlaysResponseDto",
|
|
487
|
+
'400': "BadRequestErrorResponseDto",
|
|
488
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
489
|
+
'404': "NotFoundErrorResponseDto",
|
|
490
|
+
}
|
|
491
|
+
response_data = self.api_client.call_api(
|
|
492
|
+
*_param,
|
|
493
|
+
_request_timeout=_request_timeout
|
|
494
|
+
)
|
|
495
|
+
response_data.read()
|
|
496
|
+
return self.api_client.response_deserialize(
|
|
497
|
+
response_data=response_data,
|
|
498
|
+
response_types_map=_response_types_map,
|
|
499
|
+
)
|
|
500
|
+
|
|
501
|
+
|
|
502
|
+
@validate_call
|
|
503
|
+
def get_plays_of_game_without_preload_content(
|
|
504
|
+
self,
|
|
505
|
+
game_id: StrictStr,
|
|
506
|
+
limit: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to return per page.")] = None,
|
|
507
|
+
offset: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to skip for pagination.")] = None,
|
|
508
|
+
search: Optional[StrictStr] = None,
|
|
509
|
+
down: Annotated[Optional[StrictStr], Field(description="Filter by down number")] = None,
|
|
510
|
+
distance_zone: Annotated[Optional[StrictStr], Field(description="Filter by distance zone (yards to go)")] = None,
|
|
511
|
+
play_type: Annotated[Optional[StrictStr], Field(description="Filter by analyzed play type")] = None,
|
|
512
|
+
_request_timeout: Union[
|
|
513
|
+
None,
|
|
514
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
515
|
+
Tuple[
|
|
516
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
517
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
518
|
+
]
|
|
519
|
+
] = None,
|
|
520
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
521
|
+
_content_type: Optional[StrictStr] = None,
|
|
522
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
523
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
524
|
+
) -> RESTResponseType:
|
|
525
|
+
"""Get a list of all plays for a game
|
|
526
|
+
|
|
527
|
+
Retrieves a paginated list of all plays for a given game. The results can be filtered by various play attributes.
|
|
528
|
+
|
|
529
|
+
:param game_id: (required)
|
|
530
|
+
:type game_id: str
|
|
531
|
+
:param limit: The number of results to return per page.
|
|
532
|
+
:type limit: float
|
|
533
|
+
:param offset: The number of results to skip for pagination.
|
|
534
|
+
:type offset: float
|
|
535
|
+
:param search:
|
|
536
|
+
:type search: str
|
|
537
|
+
:param down: Filter by down number
|
|
538
|
+
:type down: str
|
|
539
|
+
:param distance_zone: Filter by distance zone (yards to go)
|
|
540
|
+
:type distance_zone: str
|
|
541
|
+
:param play_type: Filter by analyzed play type
|
|
542
|
+
:type play_type: str
|
|
543
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
544
|
+
number provided, it will be total request
|
|
545
|
+
timeout. It can also be a pair (tuple) of
|
|
546
|
+
(connection, read) timeouts.
|
|
547
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
548
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
549
|
+
request; this effectively ignores the
|
|
550
|
+
authentication in the spec for a single request.
|
|
551
|
+
:type _request_auth: dict, optional
|
|
552
|
+
:param _content_type: force content-type for the request.
|
|
553
|
+
:type _content_type: str, Optional
|
|
554
|
+
:param _headers: set to override the headers for a single
|
|
555
|
+
request; this effectively ignores the headers
|
|
556
|
+
in the spec for a single request.
|
|
557
|
+
:type _headers: dict, optional
|
|
558
|
+
:param _host_index: set to override the host_index for a single
|
|
559
|
+
request; this effectively ignores the host_index
|
|
560
|
+
in the spec for a single request.
|
|
561
|
+
:type _host_index: int, optional
|
|
562
|
+
:return: Returns the result object.
|
|
563
|
+
""" # noqa: E501
|
|
564
|
+
|
|
565
|
+
_param = self._get_plays_of_game_serialize(
|
|
566
|
+
game_id=game_id,
|
|
567
|
+
limit=limit,
|
|
568
|
+
offset=offset,
|
|
569
|
+
search=search,
|
|
570
|
+
down=down,
|
|
571
|
+
distance_zone=distance_zone,
|
|
572
|
+
play_type=play_type,
|
|
573
|
+
_request_auth=_request_auth,
|
|
574
|
+
_content_type=_content_type,
|
|
575
|
+
_headers=_headers,
|
|
576
|
+
_host_index=_host_index
|
|
577
|
+
)
|
|
578
|
+
|
|
579
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
580
|
+
'200': "ListGameAllPlaysResponseDto",
|
|
581
|
+
'400': "BadRequestErrorResponseDto",
|
|
582
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
583
|
+
'404': "NotFoundErrorResponseDto",
|
|
584
|
+
}
|
|
585
|
+
response_data = self.api_client.call_api(
|
|
586
|
+
*_param,
|
|
587
|
+
_request_timeout=_request_timeout
|
|
588
|
+
)
|
|
589
|
+
return response_data.response
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
def _get_plays_of_game_serialize(
|
|
593
|
+
self,
|
|
594
|
+
game_id,
|
|
595
|
+
limit,
|
|
596
|
+
offset,
|
|
597
|
+
search,
|
|
598
|
+
down,
|
|
599
|
+
distance_zone,
|
|
600
|
+
play_type,
|
|
601
|
+
_request_auth,
|
|
602
|
+
_content_type,
|
|
603
|
+
_headers,
|
|
604
|
+
_host_index,
|
|
605
|
+
) -> RequestSerialized:
|
|
606
|
+
|
|
607
|
+
_host = None
|
|
608
|
+
|
|
609
|
+
_collection_formats: Dict[str, str] = {
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
_path_params: Dict[str, str] = {}
|
|
613
|
+
_query_params: List[Tuple[str, str]] = []
|
|
614
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
615
|
+
_form_params: List[Tuple[str, str]] = []
|
|
616
|
+
_files: Dict[
|
|
617
|
+
str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
|
|
618
|
+
] = {}
|
|
619
|
+
_body_params: Optional[bytes] = None
|
|
620
|
+
|
|
621
|
+
# process the path parameters
|
|
622
|
+
if game_id is not None:
|
|
623
|
+
_path_params['gameId'] = game_id
|
|
624
|
+
# process the query parameters
|
|
625
|
+
if limit is not None:
|
|
626
|
+
|
|
627
|
+
_query_params.append(('limit', limit))
|
|
628
|
+
|
|
629
|
+
if offset is not None:
|
|
630
|
+
|
|
631
|
+
_query_params.append(('offset', offset))
|
|
632
|
+
|
|
633
|
+
if search is not None:
|
|
634
|
+
|
|
635
|
+
_query_params.append(('search', search))
|
|
636
|
+
|
|
637
|
+
if down is not None:
|
|
638
|
+
|
|
639
|
+
_query_params.append(('down', down))
|
|
640
|
+
|
|
641
|
+
if distance_zone is not None:
|
|
642
|
+
|
|
643
|
+
_query_params.append(('distanceZone', distance_zone))
|
|
644
|
+
|
|
645
|
+
if play_type is not None:
|
|
646
|
+
|
|
647
|
+
_query_params.append(('playType', play_type))
|
|
648
|
+
|
|
649
|
+
# process the header parameters
|
|
650
|
+
# process the form parameters
|
|
651
|
+
# process the body parameter
|
|
652
|
+
|
|
653
|
+
|
|
654
|
+
# set the HTTP header `Accept`
|
|
655
|
+
if 'Accept' not in _header_params:
|
|
656
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
657
|
+
[
|
|
658
|
+
'application/json'
|
|
659
|
+
]
|
|
660
|
+
)
|
|
661
|
+
|
|
662
|
+
|
|
663
|
+
# authentication setting
|
|
664
|
+
_auth_settings: List[str] = [
|
|
665
|
+
'Client-App-Token',
|
|
666
|
+
'Client-App-Id'
|
|
667
|
+
]
|
|
668
|
+
|
|
669
|
+
return self.api_client.param_serialize(
|
|
670
|
+
method='GET',
|
|
671
|
+
resource_path='/api/v1/client/game/{gameId}/plays',
|
|
672
|
+
path_params=_path_params,
|
|
673
|
+
query_params=_query_params,
|
|
674
|
+
header_params=_header_params,
|
|
675
|
+
body=_body_params,
|
|
676
|
+
post_params=_form_params,
|
|
677
|
+
files=_files,
|
|
678
|
+
auth_settings=_auth_settings,
|
|
679
|
+
collection_formats=_collection_formats,
|
|
680
|
+
_host=_host,
|
|
681
|
+
_request_auth=_request_auth
|
|
682
|
+
)
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
@validate_call
|
|
688
|
+
def get_plays_of_video(
|
|
689
|
+
self,
|
|
690
|
+
video_id: StrictStr,
|
|
691
|
+
limit: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to return per page.")] = None,
|
|
692
|
+
offset: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to skip for pagination.")] = None,
|
|
693
|
+
search: Optional[StrictStr] = None,
|
|
694
|
+
down: Annotated[Optional[StrictStr], Field(description="Filter by down number")] = None,
|
|
695
|
+
distance_zone: Annotated[Optional[StrictStr], Field(description="Filter by distance zone (yards to go)")] = None,
|
|
696
|
+
play_type: Annotated[Optional[StrictStr], Field(description="Filter by analyzed play type")] = None,
|
|
697
|
+
_request_timeout: Union[
|
|
698
|
+
None,
|
|
699
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
700
|
+
Tuple[
|
|
701
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
702
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
703
|
+
]
|
|
704
|
+
] = None,
|
|
705
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
706
|
+
_content_type: Optional[StrictStr] = None,
|
|
707
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
708
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
709
|
+
) -> ListPlayClipsResponseDto:
|
|
710
|
+
"""Get a list of play clips for a video
|
|
711
|
+
|
|
712
|
+
Retrieves a paginated list of all play clips for a given video. The results can be filtered by various play attributes.
|
|
713
|
+
|
|
714
|
+
:param video_id: (required)
|
|
715
|
+
:type video_id: str
|
|
716
|
+
:param limit: The number of results to return per page.
|
|
717
|
+
:type limit: float
|
|
718
|
+
:param offset: The number of results to skip for pagination.
|
|
719
|
+
:type offset: float
|
|
720
|
+
:param search:
|
|
721
|
+
:type search: str
|
|
722
|
+
:param down: Filter by down number
|
|
723
|
+
:type down: str
|
|
724
|
+
:param distance_zone: Filter by distance zone (yards to go)
|
|
725
|
+
:type distance_zone: str
|
|
726
|
+
:param play_type: Filter by analyzed play type
|
|
727
|
+
:type play_type: str
|
|
728
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
729
|
+
number provided, it will be total request
|
|
730
|
+
timeout. It can also be a pair (tuple) of
|
|
731
|
+
(connection, read) timeouts.
|
|
732
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
733
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
734
|
+
request; this effectively ignores the
|
|
735
|
+
authentication in the spec for a single request.
|
|
736
|
+
:type _request_auth: dict, optional
|
|
737
|
+
:param _content_type: force content-type for the request.
|
|
738
|
+
:type _content_type: str, Optional
|
|
739
|
+
:param _headers: set to override the headers for a single
|
|
740
|
+
request; this effectively ignores the headers
|
|
741
|
+
in the spec for a single request.
|
|
742
|
+
:type _headers: dict, optional
|
|
743
|
+
:param _host_index: set to override the host_index for a single
|
|
744
|
+
request; this effectively ignores the host_index
|
|
745
|
+
in the spec for a single request.
|
|
746
|
+
:type _host_index: int, optional
|
|
747
|
+
:return: Returns the result object.
|
|
748
|
+
""" # noqa: E501
|
|
749
|
+
|
|
750
|
+
_param = self._get_plays_of_video_serialize(
|
|
751
|
+
video_id=video_id,
|
|
752
|
+
limit=limit,
|
|
753
|
+
offset=offset,
|
|
754
|
+
search=search,
|
|
755
|
+
down=down,
|
|
756
|
+
distance_zone=distance_zone,
|
|
757
|
+
play_type=play_type,
|
|
758
|
+
_request_auth=_request_auth,
|
|
759
|
+
_content_type=_content_type,
|
|
760
|
+
_headers=_headers,
|
|
761
|
+
_host_index=_host_index
|
|
762
|
+
)
|
|
763
|
+
|
|
764
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
765
|
+
'200': "ListPlayClipsResponseDto",
|
|
766
|
+
'400': "BadRequestErrorResponseDto",
|
|
767
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
768
|
+
'404': "NotFoundErrorResponseDto",
|
|
769
|
+
}
|
|
770
|
+
response_data = self.api_client.call_api(
|
|
771
|
+
*_param,
|
|
772
|
+
_request_timeout=_request_timeout
|
|
773
|
+
)
|
|
774
|
+
response_data.read()
|
|
775
|
+
return self.api_client.response_deserialize(
|
|
776
|
+
response_data=response_data,
|
|
777
|
+
response_types_map=_response_types_map,
|
|
778
|
+
).data
|
|
779
|
+
|
|
780
|
+
|
|
781
|
+
@validate_call
|
|
782
|
+
def get_plays_of_video_with_http_info(
|
|
783
|
+
self,
|
|
784
|
+
video_id: StrictStr,
|
|
785
|
+
limit: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to return per page.")] = None,
|
|
786
|
+
offset: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to skip for pagination.")] = None,
|
|
787
|
+
search: Optional[StrictStr] = None,
|
|
788
|
+
down: Annotated[Optional[StrictStr], Field(description="Filter by down number")] = None,
|
|
789
|
+
distance_zone: Annotated[Optional[StrictStr], Field(description="Filter by distance zone (yards to go)")] = None,
|
|
790
|
+
play_type: Annotated[Optional[StrictStr], Field(description="Filter by analyzed play type")] = None,
|
|
791
|
+
_request_timeout: Union[
|
|
792
|
+
None,
|
|
793
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
794
|
+
Tuple[
|
|
795
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
796
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
797
|
+
]
|
|
798
|
+
] = None,
|
|
799
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
800
|
+
_content_type: Optional[StrictStr] = None,
|
|
801
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
802
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
803
|
+
) -> ApiResponse[ListPlayClipsResponseDto]:
|
|
804
|
+
"""Get a list of play clips for a video
|
|
805
|
+
|
|
806
|
+
Retrieves a paginated list of all play clips for a given video. The results can be filtered by various play attributes.
|
|
807
|
+
|
|
808
|
+
:param video_id: (required)
|
|
809
|
+
:type video_id: str
|
|
810
|
+
:param limit: The number of results to return per page.
|
|
811
|
+
:type limit: float
|
|
812
|
+
:param offset: The number of results to skip for pagination.
|
|
813
|
+
:type offset: float
|
|
814
|
+
:param search:
|
|
815
|
+
:type search: str
|
|
816
|
+
:param down: Filter by down number
|
|
817
|
+
:type down: str
|
|
818
|
+
:param distance_zone: Filter by distance zone (yards to go)
|
|
819
|
+
:type distance_zone: str
|
|
820
|
+
:param play_type: Filter by analyzed play type
|
|
821
|
+
:type play_type: str
|
|
822
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
823
|
+
number provided, it will be total request
|
|
824
|
+
timeout. It can also be a pair (tuple) of
|
|
825
|
+
(connection, read) timeouts.
|
|
826
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
827
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
828
|
+
request; this effectively ignores the
|
|
829
|
+
authentication in the spec for a single request.
|
|
830
|
+
:type _request_auth: dict, optional
|
|
831
|
+
:param _content_type: force content-type for the request.
|
|
832
|
+
:type _content_type: str, Optional
|
|
833
|
+
:param _headers: set to override the headers for a single
|
|
834
|
+
request; this effectively ignores the headers
|
|
835
|
+
in the spec for a single request.
|
|
836
|
+
:type _headers: dict, optional
|
|
837
|
+
:param _host_index: set to override the host_index for a single
|
|
838
|
+
request; this effectively ignores the host_index
|
|
839
|
+
in the spec for a single request.
|
|
840
|
+
:type _host_index: int, optional
|
|
841
|
+
:return: Returns the result object.
|
|
842
|
+
""" # noqa: E501
|
|
843
|
+
|
|
844
|
+
_param = self._get_plays_of_video_serialize(
|
|
845
|
+
video_id=video_id,
|
|
846
|
+
limit=limit,
|
|
847
|
+
offset=offset,
|
|
848
|
+
search=search,
|
|
849
|
+
down=down,
|
|
850
|
+
distance_zone=distance_zone,
|
|
851
|
+
play_type=play_type,
|
|
852
|
+
_request_auth=_request_auth,
|
|
853
|
+
_content_type=_content_type,
|
|
854
|
+
_headers=_headers,
|
|
855
|
+
_host_index=_host_index
|
|
856
|
+
)
|
|
857
|
+
|
|
858
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
859
|
+
'200': "ListPlayClipsResponseDto",
|
|
860
|
+
'400': "BadRequestErrorResponseDto",
|
|
861
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
862
|
+
'404': "NotFoundErrorResponseDto",
|
|
863
|
+
}
|
|
864
|
+
response_data = self.api_client.call_api(
|
|
865
|
+
*_param,
|
|
866
|
+
_request_timeout=_request_timeout
|
|
867
|
+
)
|
|
868
|
+
response_data.read()
|
|
869
|
+
return self.api_client.response_deserialize(
|
|
870
|
+
response_data=response_data,
|
|
871
|
+
response_types_map=_response_types_map,
|
|
872
|
+
)
|
|
873
|
+
|
|
874
|
+
|
|
875
|
+
@validate_call
|
|
876
|
+
def get_plays_of_video_without_preload_content(
|
|
877
|
+
self,
|
|
878
|
+
video_id: StrictStr,
|
|
879
|
+
limit: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to return per page.")] = None,
|
|
880
|
+
offset: Annotated[Optional[Union[StrictFloat, StrictInt]], Field(description="The number of results to skip for pagination.")] = None,
|
|
881
|
+
search: Optional[StrictStr] = None,
|
|
882
|
+
down: Annotated[Optional[StrictStr], Field(description="Filter by down number")] = None,
|
|
883
|
+
distance_zone: Annotated[Optional[StrictStr], Field(description="Filter by distance zone (yards to go)")] = None,
|
|
884
|
+
play_type: Annotated[Optional[StrictStr], Field(description="Filter by analyzed play type")] = None,
|
|
885
|
+
_request_timeout: Union[
|
|
886
|
+
None,
|
|
887
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
888
|
+
Tuple[
|
|
889
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
890
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
891
|
+
]
|
|
892
|
+
] = None,
|
|
893
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
894
|
+
_content_type: Optional[StrictStr] = None,
|
|
895
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
896
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
897
|
+
) -> RESTResponseType:
|
|
898
|
+
"""Get a list of play clips for a video
|
|
899
|
+
|
|
900
|
+
Retrieves a paginated list of all play clips for a given video. The results can be filtered by various play attributes.
|
|
901
|
+
|
|
902
|
+
:param video_id: (required)
|
|
903
|
+
:type video_id: str
|
|
904
|
+
:param limit: The number of results to return per page.
|
|
905
|
+
:type limit: float
|
|
906
|
+
:param offset: The number of results to skip for pagination.
|
|
907
|
+
:type offset: float
|
|
908
|
+
:param search:
|
|
909
|
+
:type search: str
|
|
910
|
+
:param down: Filter by down number
|
|
911
|
+
:type down: str
|
|
912
|
+
:param distance_zone: Filter by distance zone (yards to go)
|
|
913
|
+
:type distance_zone: str
|
|
914
|
+
:param play_type: Filter by analyzed play type
|
|
915
|
+
:type play_type: str
|
|
916
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
917
|
+
number provided, it will be total request
|
|
918
|
+
timeout. It can also be a pair (tuple) of
|
|
919
|
+
(connection, read) timeouts.
|
|
920
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
921
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
922
|
+
request; this effectively ignores the
|
|
923
|
+
authentication in the spec for a single request.
|
|
924
|
+
:type _request_auth: dict, optional
|
|
925
|
+
:param _content_type: force content-type for the request.
|
|
926
|
+
:type _content_type: str, Optional
|
|
927
|
+
:param _headers: set to override the headers for a single
|
|
928
|
+
request; this effectively ignores the headers
|
|
929
|
+
in the spec for a single request.
|
|
930
|
+
:type _headers: dict, optional
|
|
931
|
+
:param _host_index: set to override the host_index for a single
|
|
932
|
+
request; this effectively ignores the host_index
|
|
933
|
+
in the spec for a single request.
|
|
934
|
+
:type _host_index: int, optional
|
|
935
|
+
:return: Returns the result object.
|
|
936
|
+
""" # noqa: E501
|
|
937
|
+
|
|
938
|
+
_param = self._get_plays_of_video_serialize(
|
|
939
|
+
video_id=video_id,
|
|
940
|
+
limit=limit,
|
|
941
|
+
offset=offset,
|
|
942
|
+
search=search,
|
|
943
|
+
down=down,
|
|
944
|
+
distance_zone=distance_zone,
|
|
945
|
+
play_type=play_type,
|
|
946
|
+
_request_auth=_request_auth,
|
|
947
|
+
_content_type=_content_type,
|
|
948
|
+
_headers=_headers,
|
|
949
|
+
_host_index=_host_index
|
|
950
|
+
)
|
|
951
|
+
|
|
952
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
953
|
+
'200': "ListPlayClipsResponseDto",
|
|
954
|
+
'400': "BadRequestErrorResponseDto",
|
|
955
|
+
'401': "UnauthorizedErrorResponseDto",
|
|
956
|
+
'404': "NotFoundErrorResponseDto",
|
|
957
|
+
}
|
|
958
|
+
response_data = self.api_client.call_api(
|
|
959
|
+
*_param,
|
|
960
|
+
_request_timeout=_request_timeout
|
|
961
|
+
)
|
|
962
|
+
return response_data.response
|
|
963
|
+
|
|
964
|
+
|
|
965
|
+
def _get_plays_of_video_serialize(
|
|
966
|
+
self,
|
|
967
|
+
video_id,
|
|
968
|
+
limit,
|
|
969
|
+
offset,
|
|
970
|
+
search,
|
|
971
|
+
down,
|
|
972
|
+
distance_zone,
|
|
973
|
+
play_type,
|
|
974
|
+
_request_auth,
|
|
975
|
+
_content_type,
|
|
976
|
+
_headers,
|
|
977
|
+
_host_index,
|
|
978
|
+
) -> RequestSerialized:
|
|
979
|
+
|
|
980
|
+
_host = None
|
|
981
|
+
|
|
982
|
+
_collection_formats: Dict[str, str] = {
|
|
983
|
+
}
|
|
984
|
+
|
|
985
|
+
_path_params: Dict[str, str] = {}
|
|
986
|
+
_query_params: List[Tuple[str, str]] = []
|
|
987
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
988
|
+
_form_params: List[Tuple[str, str]] = []
|
|
989
|
+
_files: Dict[
|
|
990
|
+
str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
|
|
991
|
+
] = {}
|
|
992
|
+
_body_params: Optional[bytes] = None
|
|
993
|
+
|
|
994
|
+
# process the path parameters
|
|
995
|
+
if video_id is not None:
|
|
996
|
+
_path_params['videoId'] = video_id
|
|
997
|
+
# process the query parameters
|
|
998
|
+
if limit is not None:
|
|
999
|
+
|
|
1000
|
+
_query_params.append(('limit', limit))
|
|
1001
|
+
|
|
1002
|
+
if offset is not None:
|
|
1003
|
+
|
|
1004
|
+
_query_params.append(('offset', offset))
|
|
1005
|
+
|
|
1006
|
+
if search is not None:
|
|
1007
|
+
|
|
1008
|
+
_query_params.append(('search', search))
|
|
1009
|
+
|
|
1010
|
+
if down is not None:
|
|
1011
|
+
|
|
1012
|
+
_query_params.append(('down', down))
|
|
1013
|
+
|
|
1014
|
+
if distance_zone is not None:
|
|
1015
|
+
|
|
1016
|
+
_query_params.append(('distanceZone', distance_zone))
|
|
1017
|
+
|
|
1018
|
+
if play_type is not None:
|
|
1019
|
+
|
|
1020
|
+
_query_params.append(('playType', play_type))
|
|
1021
|
+
|
|
1022
|
+
# process the header parameters
|
|
1023
|
+
# process the form parameters
|
|
1024
|
+
# process the body parameter
|
|
1025
|
+
|
|
1026
|
+
|
|
1027
|
+
# set the HTTP header `Accept`
|
|
1028
|
+
if 'Accept' not in _header_params:
|
|
1029
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
1030
|
+
[
|
|
1031
|
+
'application/json'
|
|
1032
|
+
]
|
|
1033
|
+
)
|
|
1034
|
+
|
|
1035
|
+
|
|
1036
|
+
# authentication setting
|
|
1037
|
+
_auth_settings: List[str] = [
|
|
1038
|
+
'Client-App-Token',
|
|
1039
|
+
'Client-App-Id'
|
|
1040
|
+
]
|
|
1041
|
+
|
|
1042
|
+
return self.api_client.param_serialize(
|
|
1043
|
+
method='GET',
|
|
1044
|
+
resource_path='/api/v1/client/videos/{videoId}/plays',
|
|
1045
|
+
path_params=_path_params,
|
|
1046
|
+
query_params=_query_params,
|
|
1047
|
+
header_params=_header_params,
|
|
1048
|
+
body=_body_params,
|
|
1049
|
+
post_params=_form_params,
|
|
1050
|
+
files=_files,
|
|
1051
|
+
auth_settings=_auth_settings,
|
|
1052
|
+
collection_formats=_collection_formats,
|
|
1053
|
+
_host=_host,
|
|
1054
|
+
_request_auth=_request_auth
|
|
1055
|
+
)
|
|
1056
|
+
|
|
1057
|
+
|