further api fleshing