add_handler api