Final API design