commit through API