"""Interface for the ows-features microservice.""" from ddtrace import tracer from owsrequest import request from notifications_delivery import config from notifications_delivery.constants import ows_services @tracer.wrap(service='ows-features') def get_user_features(user_id): """Get feature flags for a user from ows-features. Args: user_id (str): the orchard user id Returns: features (dict): containing the user's features. """ path = '/features/user/{user_id}'.format(user_id=user_id) result = request.process( application=ows_services.APPLICATION_NAME, environment=config.ENVIRONMENT, method=ows_services.METHOD_GET, service_name=ows_services.OWS_FEATURES, path=path) if result.status_code != 200: return None return result.json()