cloudflare / cloudflare/cloudflare-python

Pagination on zero_trust.devices.list only returns 1 page

Open
#2,576 9 comments 0 reactions 1 assignee Claimed by @vaishakdinesh View on GitHub
Dominant language
Python
Stars
506
Forks
148
Avg merge
3h 15m
Merged PRs (30d)
1

Description

### Confirm this is a Python library issue and not an underlying Cloudflare API issue.

- [x] This is an issue with the Python library

### Describe the bug

When using either the automatic pagination or the "has_next_page" manual pagination on the `client.zero_trust.devices.list(` endpoint, only 1 page is returned (20 devices).

The "has_next_page" function returns `False`.

This applies to async and non-async calls.

I can confirm that I have much more than 20 devices on the account, and the old API used to fetch them all.

This has been present in the lib for a while (months). I tried this lib out a while ago and found a few issues, but didn't get to reporting them then. I thought I'd mention that in case it helps narrow the issue down.

### To Reproduce

1. Try fetch all devices, either by automatic pagination or manual.
2. Append to list
3. Check length of list to find it's too short.

### Code snippets

```Python
from cloudflare import Cloudflare

client = Cloudflare()

all_devices = []

for device in client.zero_trust.devices.list(account_id=***):
all_devices.append(device)

len(all_devices)
# In my case, outputs 20 instead of 91
```

### OS

Ubuntu 24.04

### Python version

3.12.3

### Library version

v4.1.0

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.