"""Interface for the ows-artist microservice.""" from oto import response from owsrequest import request as requests from feature_fm.constants.error import ERROR_CODE_OWS_USERS_REQUEST from feature_fm.constants.ows_services import CONTENT_TYPE from feature_fm.constants.ows_services import OWS_USERS def get_user_info(user_id, correlation_id=None): """Get a user's info from ows-users. Args: user_id (str): the orchard user id. correlation_id (str): the correlation ID. Returns: response.Response: containing the user's info. """ path = '/users/{user_id}/minimum-details?include_roles=yes'.format( user_id=user_id) result = requests.get( OWS_USERS, path, headers={'Content-Type': CONTENT_TYPE}, correlation_id=correlation_id) if result.status_code != 200: return response.create_error_response( status=result.status_code, code=ERROR_CODE_OWS_USERS_REQUEST, message=result.text) return response.Response(result.json())