Pagination

Handle paginated results in the Python SDK

Handle paginated API responses.

Pagination Utilities

from limitry import Client, PaginatedResponse, paginate_all, collect_all

async def fetch_events(client, cursor=None):
    """Helper function to fetch a page of events"""
    response = await client.request(
        "GET", 
        "/events", 
        params={"cursor": cursor} if cursor else None
    )
    return PaginatedResponse(
        data=response["data"],
        next_cursor=response.get("nextCursor"),
        has_more=response.get("hasMore", False),
    )

Iterate Through All Pages

async with Client(api_key="your-api-key") as client:
    async for event in paginate_all(lambda c: fetch_events(client, c)):
        print(f"Event: {event.id}")

Collect All Items

all_events = await collect_all(lambda c: fetch_events(client, c))
print(f"Total events: {len(all_events)}")

Next Steps

On this page