Switch api upload to node-style callback