def retrieve(cls: Type[T], league_id: str, manager_id: str, credentials: RequestCredentials, configuration: Configuration, as_at_round: Optional[int] = None) -> Optional[T]: """ Return a Team in the supplied League, managed by the supplied Manager, if it exists. """ parameters = [ URLParameter('league', league_id), URLParameter('manager', manager_id) ] if as_at_round: parameters.append(URLParameter('as_at_round', as_at_round)) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, configuration=configuration, data=None, url_parameters=URLParameters(parameters), credentials=credentials) return cls.optionally_decode(request.response_data)
def retrieve_many( cls: Type[T], season: Season, offset: int, limit: int, configuration: Configuration, order_by: OrderBy = OrderBy.TOTAL_SEASON_POINTS, order: Order = Order.DESCENDING, name_fragment: Optional[str] = None, credentials: Optional[RequestCredentials] = None) -> List[T]: parameters = URLParameters([ URLParameter('season', season.public_id), URLParameter('offset', offset), URLParameter('limit', limit), URLParameter('order_by', order_by.value), URLParameter('order', order.value) ]) if name_fragment is not None: parameters.append(URLParameter('fragment', name_fragment)) request = ApiRequest(path=cls._LIST_PATH, method=HTTPMethod.GET, data=None, url_parameters=parameters, credentials=credentials, configuration=configuration) return cls.optionally_decode_many(request.response_data, default_to_empty_list=True)
def retrieve(cls: Type[T], reset_key: str, configuration: Configuration) -> Optional[T]: target = URLParameter('reset-key', reset_key) parameters = URLParameters([target]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, configuration=configuration, url_parameters=parameters) return cls.optionally_decode(request.response_data)
def create(cls: Type[T], email_address: str, configuration: Configuration) -> T: target = URLParameter('email', email_address) parameters = URLParameters([target]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.POST, configuration=configuration, url_parameters=parameters) return cls.decode(request.response_data)
def retrieve(cls: Type[T], public_id: str, credentials: RequestCredentials, configuration: Configuration) -> Optional[T]: parameters = URLParameters([URLParameter('offer', public_id)]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, configuration=configuration, data=None, url_parameters=parameters, credentials=credentials) return cls.optionally_decode(request.response_data)
def delete(self, credentials: RequestCredentials, configuration: Configuration) -> None: """Delete this Session, AKA logout the user""" target = URLParameter('session_id', str(self._session_id)) parameters = URLParameters([target]) ApiRequest(path=self.API_PATH, method=HTTPMethod.DELETE, configuration=configuration, credentials=credentials, data=None, url_parameters=parameters) return None
def retrieve_list( cls: Type[T], configuration: Configuration, credentials: Optional[RequestCredentials] = None) -> List[T]: request = ApiRequest(path=cls._LIST_PATH, method=HTTPMethod.GET, data=None, url_parameters=None, credentials=credentials, configuration=configuration) return cls.optionally_decode_many(request.response_data, default_to_empty_list=True)
def retrieve(cls: Type[T], public_id: str, season: Season, credentials: Optional[RequestCredentials], configuration: Optional[Configuration]) -> Optional[T]: parameters = URLParameters([ URLParameter('public_id', public_id), URLParameter('season', season.public_id) ]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, data=None, url_parameters=parameters, credentials=credentials, configuration=configuration) return cls.optionally_decode(request.response_data)
def retrieve( cls: Type[T], public_id: str, configuration: Configuration, credentials: Optional[RequestCredentials] = None) -> Optional[T]: if not isinstance(public_id, str): raise TypeError('public_id must be of type `str`') parameters = URLParameters([URLParameter('public_id', public_id)]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, data=None, url_parameters=parameters, credentials=credentials, configuration=configuration) return cls.optionally_decode(request.response_data)
def retrieve(cls: Type[T], public_id: str, credentials: RequestCredentials, configuration: Configuration) -> Optional[T]: """ Optionally return a Human with the given public ID, if it exists """ assert isinstance(public_id, str) target = URLParameter('public_id', public_id) parameters = URLParameters([target]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, configuration=configuration, data=None, url_parameters=parameters, credentials=credentials) return cls.optionally_decode(request.response_data)
def retrieve(cls: Type[T], public_id: str, credentials: RequestCredentials, configuration: Configuration) -> Optional[T]: """ Optionally return a League with the given public ID, if it exists """ assert isinstance(public_id, str) parameters = URLParameters([ URLParameter('league', public_id), URLParameter('season', '2020') # MVP hardcode ]) request = ApiRequest(path=cls._PATH, method=HTTPMethod.GET, configuration=configuration, data=None, url_parameters=parameters, credentials=credentials) return cls.optionally_decode(request.response_data)
def retrieve(cls: Type[T], session_id: str, credentials: RequestCredentials, configuration: Configuration) -> Optional[T]: """Return a Session with the given Session ID, if it exists""" assert isinstance(session_id, str) target = URLParameter('session_id', str(session_id)) parameters = URLParameters([target]) request = ApiRequest(path=cls.API_PATH, method=HTTPMethod.GET, configuration=configuration, credentials=credentials, data=None, url_parameters=parameters) if request.response_data is None: return None return cls.decode(request.response_data)