Could you run it on some sort of timer?
Check if the API works every hour.
If no, wait for another hour and repeat.
If yes, compress the images and rename to {banner}_smush (something along these lines)
Then in VL, if the banner has _smush over-ride the default banner (much like Premium to...