adjusted api() methods