internal/router: implement PUT for meta endpoints

This also adds the notion of a multi-error, adding a new field to the Error
type.
Why the use of the global recorded calls? I feel this could be scoped to this method alone.