Refactor request method + add PUT