new api controller implemented