CRUD comlete flow