I wonder if it wouldn't make sense to make this take InputRows instead of Maps<>.

The difference is that parsing problems are visible to the person submitting the event instead of to the reader?  Then again, it might be nice to just accept anything and leave it to the reader, 'cause there are bound to be things that only the reader will know about anyway.