def METHOD_NAME(self, id=None, title=None, type=None, year=None, plot='short', tomatoes=False):
    # build the params
    params = {}
    if id:
        params['i'] = id
    if title:
        params['t'] = title
    if not params:
        raise ValueError('At least id or title is required')
    params['type'] = type
    params['y'] = year
    params['plot'] = plot
    params['tomatoes'] = tomatoes
    # perform the request
    r = self.session.METHOD_NAME(self.base_url, params=params)
    r.raise_for_status()
    # get the response as json
    j = r.json()
    # check response status
    if j['Response'] == 'False':
        return None
    return j