api initially complete