def get_classe_from_id(name, classe_id): request_url = classpass_url + '/v1/schedules/' + str(classe_id) header_token = {'CP-Authorization': "Token " + get_token(name)} classe = requests.get(request_url, headers=header_token) if classe.status_code == 504: return [] return Classe(json.loads(classe.content), [classe_id])
def cancel_booked_class(name, classe_id): url = classpass_url + '/v1/users/' + get_user_id( name) + '/reservations/' + str(classe_id) header = make_header_token(get_token(name)) header['Content-Type'] = 'application/json' cancel_dict = {"state": "cancel"} return requests.patch(url, headers=header, json=cancel_dict)
def get_reservations(name): request_url = classpass_url + '/v2/users/' + get_user_id( name) + '/reservations' header_token = {'CP-Authorization': "Token " + get_token(name)} classes = requests.get(request_url, headers=header_token) if classes.status_code == 504: return [] return [Classe(c, []) for c in json.loads(classes.content)['reservations']]
def get_classes(name, venue_id, start_date, upcoming=True): request_url = classpass_url + '/v1/venues/' + str( venue_id) + '/schedules?date=' + format_date_for_classpass( start_date) + '&upcoming=' + str(upcoming).lower() header_token = {'CP-Authorization': "Token " + get_token(name)} classes = requests.get(request_url, headers=header_token) if classes.status_code == 504: return [] scheduled_classes = get_scheduled_classes_ids(name) return [ Classe(c, scheduled_classes) for c in json.loads(classes.content)['schedules'] ]
def book_class_with_info(user, class_id, class_credits): header_token = make_header_token(get_token(user)) user_id = get_user_id(user) booking_response = requests.post(classpass_url + '/v1/users/' + user_id + '/reservations', data=json.dumps({ 'schedule': int(class_id), 'credits': int(class_credits) }), headers=header_token) return booking_response.status_code == 201
def get_user_bookmarks(name): user_id = classpass_login[name]['user_id'] request_url = classpass_url + '/v1/users/' + user_id + '/bookmarks' header_token = {'CP-Authorization': "Token " + get_token(name)} header_token['Content-Type'] = 'application/json' result = requests.get(request_url, headers=header_token) my_venues = [] for venue in result.json()['bookmarks']: name = venue['venue']['name'] if 'subtitle' in venue['venue'].keys(): subtitle = venue['venue']['subtitle'] name += (' • ' + subtitle) * (subtitle != '') my_venues.append(dict({"name": name, "id": venue['venue']['id']})) return json.dumps(my_venues)