first commit of more comprehensive embed api