working on plugin api