Any suggestions on how to validate page content server side and potentially veto creation/update if there are issues?

I’ve got a plugin on the Atlassian Marketplace which filters options presented to users based upon admin configurations. I’m looking for a way to check that a user doesn’t use a rest interface or source editor to manually insert options that should not be available. So I really need a server side check that the content rules for the macro have not been violated before allowing the content to be saved. The Event Listeners only fire after the content has been saved, so that’s at best a “C” option.