runAPI => execAPI, added runAPI with final states