Restarting Callback when it has finished

I have a callback that pulls a large amount of data from an API. I would like the Event that triggers the function to be when that function finishes. So the entire function just keeps running while the application is running, but it does not start itself if it is currently in the middle of its process.