Nice!! I liked this. Just a suggestion if it seems fit to you, 

if we have invalid_params = {} and add in error messages for each of the entities. Like may be the schedule is not uuidlike or missing, etc for other entities if needed in future.