refactor apikey retrieval, fix lastfm with empty input