Redesigned password api