import json from panera_sync.user import get_signed_in_user import datetime def get_bearer_token(session): user_data = get_signed_in_user(session) return user_data["oauthToken"]["id_token"] def get_cafe_id(session): user_data = get_signed_in_user(session) data = user_data["department"] cafe, useless = data.split("-") return cafe def get_iBOH_id(session, bearer_token): headers = {"authorization": f"Bearer {bearer_token}"} r = session.get( "https://pantry.panerabread.com/apis/pantry-ui-service/user-profile/v1/user/ibohid", headers=headers, ) data = json.loads(r.text) return data["ibohid"] def get_shifts( session, bearer_token, iBOH_id, cafe_id, start_date: datetime.date, end_date: datetime.date, ): headers = {"authorization": f"Bearer {bearer_token}"} base_url = f"https://iportal.panerabread.com/pantry-apis/scheduling-ui-service/associate/{iBOH_id}/shifts" query = { "cafeNo": cafe_id, "withHistory": True, "startDate": start_date.strftime("%Y-%m-%d"), "endDate": end_date.strftime("%Y-%m-%d"), } r = session.get(base_url, params=query, headers=headers) breakpoint() return json.loads(r.text)