Further api refinement