import requests OWS_ABACUS_EVENT_URL = 'https://qa-ows-abacus-event.theorchard.io/abacus-event' ALREADY_REJECTED = []] EVENTS_TO_PROCESS = [] def get_existing_event(target_id): url = f'{OWS_ABACUS_EVENT_URL}/payment-group-payment-account/{target_id}' resp = requests.get(url).json() for existing_event in resp: if existing_event['event_name'] == 'commit_reversal_to_subledger': return True return False def create_new_event(event_body): url = f'{OWS_ABACUS_EVENT_URL}/' resp = requests.post(url, json=event_body) return resp def process(): for event in EVENTS_TO_PROCESS: target_id = event['target_id'] already_done = get_existing_event(target_id=target_id) if already_done and target_id not in ALREADY_REJECTED: raise Exception new_event = create_new_event(event) if new_event.status_code != 201: print(f'Something went wrong: {target_id}') else: print(f'Success: {target_id}') process()