Add paging to API/get_items

This commit is contained in:
Sander Groen 2025-02-25 22:23:58 +01:00
commit 505d274167

View file

@ -146,10 +146,17 @@ class API(object):
return self.users("/Items/%s" % item_id)
def get_items(self, item_ids):
return self.users(
"/Items",
params={"Ids": ",".join(str(x) for x in item_ids), "Fields": info()},
)
all_results = []
for i in range(0, len(item_ids), 150):
chunk = item_ids[i:i + 150]
response = self.users(
"/Items",
params={"Ids": ",".join(str(x) for x in chunk), "Fields": info()},
)
if response:
all_results.extend(response.get("Items", []))
return {"Items": all_results}
def get_sessions(self):
return self.sessions(params={"ControllableByUserId": "{UserId}"})