fragment AuthUser on User { id email @nonNull roles @nonNull { nodes { name @nonNull } } } fragment AuthPayload on LoginPayload { authToken refreshToken user { ...AuthUser } } mutation AuthLogin($username: String!, $password: String!) { login(input: { provider: PASSWORD, credentials: { username: $username, password: $password } }) { ...AuthPayload } } mutation AuthRefreshToken($refreshToken: String!) { refreshToken(input: { refreshToken: $refreshToken }) { authToken } }