api inheritance