Adding a caching layer to prevent hitting API limits.