If I'm understanding you correctly, I don't think there's a way to do that. Upload to a KB every time you call upon the API. Since you'd want to have the information be the latest.
To do what you need it to, I'd have the API call at the start one time, then have it last for the whole chat session. Then for every user query, feed into an AI alongside the updated league info and have it use it to answer. Not the best way to do it, but I can't think of using KBs in this scenario that would be practical.