Во-первых, я бы четко отделил интерфейс от кода, который читает исходные API. Сделав это, я мог бы получить код, который читает исходные API-интерфейсы, напрямую передает интерфейс, базу данных или и то, и другое.
Я парень из базы данных. Я бы склонялся к подаче данных из API в базу данных и подключению внешнего интерфейса к базе данных. Но это действительно зависит от требований приложения.
Заполнение базы данных позволяет легко и дешево передумать. Если позже вы (или кто-либо другой) решит не сохранять исторических данных, просто удалите старые данные после сохранения новых данных. Если вы (или кто-либо другой) позже решит сохранить все исторические данные, просто не удаляйте старые данные.
Подача базы данных также дает вам детальный контроль над тем, кто получает данные, относительно независимо от разрешений их сетевой операционной системы. В зависимости от приложения, это может или не может быть хорошей вещью.