feat: add register api