You have added support for 20 years of data as well as downloading all three types of reports. As I understand it, the Python API has not yet been updated. Any plans for updating it?
I made a quick fix by adjusting self._params:
self._params = {'authKey': self.api_key, 'maxcount': '20', 'maxYearCount': '20', 'maxR12QCount': '40'}
And adding the following function:
def get_instrument_reports_all_types(self, insId) -> List[Report]:
status, data = self._get(f'instruments/{insId}/reports')
if status != HTTPStatus.OK:
raise APIError
return [Report(**report1) for report1 in data.get('reportsYear', [])], [Report(**report2) for report2 in data.get('reportsQuarter', [])], [Report(**report3) for report3 in data.get('reportsR12', [])]