""" Audit Prep Report ================= Manages audit prep report data. """ from labelaudit.connectors import api_client as api_connector from labelaudit.logic.result import Result def fetch(**kwargs): """Calls VAPI to fetch an audit preparation. Args: **kwargs (dict): youtubeAuditId, offset, limit, sort (upc, desc) Return: dict with keys 'total_reports' (int) and 'reports' (list) {'reports': [{ 'artistName': 'Gabriel Pérez', 'cmsAccount': None, 'dateAddedToOA': '2005-07-14', ...etc }, { 'artistName': 'René Pretschner Band', 'cmsAccount': None, 'dateAddedToOA': '2005-07-14', ...etc }], 'total_reports': 48} """ response = api_connector.get_client().get( 'youtubeauditprepreport/', params=kwargs) response_body = response.json() result = Result(status=response.status_code) if response.status_code == 200: result.message = { 'total_records': response_body.get('pagination').get('totalRecords'), 'report_rows': response_body.get('youtubeAuditPrepReport')} else: result.errors = response_body.get('fault') return result