base oauth functionality completed