pull up manifest logic to service layer