add canoe api;