redesigned api