issue #19290: split fetch route into two