More advanced API with interface.