an api has 3 ops, 1:init, 2:run, 3:destroy