redesign API