"""API Client for ows_abacus_schedule.""" import requests class AbacusScheduleAPIClient: """API Client for ows_abacus_schedule.""" def __init__(self, base_url, headers): """Initialize AbacusScheduleAPIClient class.""" self.base_url = base_url self.headers = headers def get_hello(self): """GET /hello.""" endpoint = '{}/hello'.format(self.base_url) return requests.get(endpoint, headers=self.headers) def post_schedule(self, body): """POST /schedule .""" endpoint = '{}/schedule'.format( self.base_url ) return requests.post(endpoint, json=body, headers=self.headers) def get_schedule_attachments_by_schedule_id(self, schedule_id): """GET /schedule/{schedule_id}/schedule-attachments/ .""" endpoint = '{}/schedule/{}/schedule-attachments'.format( self.base_url, schedule_id ) return requests.get(endpoint, headers=self.headers) def delete_schedule_attachments(self, schedule_id, contribution_id): """PUT /schedule/{schedule_id}/contribution/schedule-attachments/ .""" endpoint = '{}/schedule/{}/contribution/schedule-attachments/'.format( self.base_url, schedule_id ) body = { 'unassigned_target_ids': [ contribution_id ] } return requests.put(endpoint, json=body, headers=self.headers)