Found when reviewing Bug 36418 serials/subscription-frequency.pl > print $input->header(-type => 'text/plain', -charset => 'UTF-8'); > print to_json( $frequencyrecord ); --- same in serials/subscription-numberpattern.pl --- serials/create-numberpattern.pl manual json here: > print $input->header(-type => 'text/plain', -charset => 'UTF-8'); > print "{\"numberpatternid\":\"$numberpatternid\"}"; --- Here it's HTML but still text/plain content-type acqui/ajax-getauthvaluedropbox.pl --- I searched with rg "text/plain" -C 10 | rg "json" -C 10 # rg is the package ripgrep in most cases (and somehow the html case came up in the noise due to the wacky grep chaining) I tried doing the same with `git grep` + grep but I got even more noise that I already had. Anyway, that's an hint to give ideas to eventually find more inconsistencies. (apply Bug 36418 is it's still not merged)