API re-defined