Best practices - retrieve data from public API


In my app, I need to regularly retrieve information from a public API (in cronjob) and the admin should also be able to launch an update using the interface.
I thought of creating a model Api and create his own getters. This way I would be able to call on it in other controllers and in commands.

Is this the best way ? Should I place the API logic elsewhere ?