Refactor and add some requets.