Should all Api requests be generated from the state manager?

When I need to update my state, I dispatch an action that will commit a mutation to change the state object. It’s clear why.
But what if I need to make an API call that will not be a part of the state? Any point in dispatching an action? - maybe for keeping the components clear of API calls or for having the chance to easily “catch” the response and store it in the state in the future if needed
Would love to hear about your approaches and reasons