update with consumer middleware