more ingredient api functionality and optimization