"""API Client for ows-abacus-event.""" import requests class AbacusEventAPIClient: """API Client for ows-abacus-event.""" def __init__(self, base_url, headers): """Initialize ows_ledger_APIClient class.""" self.base_url = base_url self.headers = headers def post_abacus_event(self, body): """Execute a POST against /abacus-event endpoint.""" endpoint = '{}/abacus-event'.format(self.base_url) return requests.post(endpoint, headers=self.headers, json=body) def get_abacus_event_by_target_type_and_id(self, target_type, target_id): """GET /abacus-event/{target_type}/{target_id}/ .""" endpoint = '{}/abacus-event/{}/{}/'.format( self.base_url, target_type, target_id ) return requests.get(endpoint, headers=self.headers) def get_approval_count(self, payment_group_payment_id): """GET number of approval events .""" endpoint = '{}/abacus-event/payment-group-payment/{}/approval-count'.format( self.base_url, payment_group_payment_id ) return requests.get(endpoint, headers=self.headers) def put_abacus_event_rollback(self, body): """PUT /abacus-event/rollback .""" endpoint = '{}/abacus-event/rollback'.format(self.base_url) return requests.put(endpoint, headers=self.headers, json=body)