Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request to migrate library from Offset Based Pagination to Cursor Based Pagination #543

Closed
eric-at-nocoast opened this issue May 22, 2023 · 9 comments

Comments

@eric-at-nocoast
Copy link

Zendesk currently offers both offset-based pagination (OBP) and cursor-based pagination (CBP) for most API endpoints. CBP offers many performance advantages over OBP and will be the primary method of pagination offered at Zendesk in the near future. In an effort to provide a better, faster experience for our customers we are taking steps to encourage a transition to CBP – starting with the introduction of tighter limits on high-offset OBP requests.

What is changing?

Beginning on August 15, 2023, OBP requests over the first 100 pages (10,000 records) will result in an error message: “400 Bad Request.” In order to request data sets larger than 10,000 records, customers will need to transition to CBP.

OBP requests for fewer than 100 pages will not be affected, nor will requests made using the CBP model.

Why is Zendesk making this change?

We are making this change in line with our previous announcement recommending adoption of CBP and to encourage customers to make the switch as soon as possible. Not only is cursor-based pagination faster and more efficient for our customers, it also puts less strain on Zendesk infrastructure and increases stability and reliability. As a first step, we are limiting offset-based pagination capabilities at a relatively high level, so that the transition can take place with minimal disruption to current API usage.

What do I need to do?

Zendesk strongly encourages library maintainers to make the transition to cursor-based pagination before August 15, 2023. If you decide to not transition your library please add documentation in regards to the 100 page OBP limit to your library. If we have not heard from you in regards to this change prior to August 15, 2023. We will be removing our reference to your library from our documentation and will consider it abandoned / unmaintained.

@Ptr314
Copy link
Collaborator

Ptr314 commented May 25, 2023

I've just added support and testing it locally. Is there anyone to help with testing on real cases - because many endpoints can be affected? (It passes built in tests, but I'd like to test a bit deeper)

@Ptr314
Copy link
Collaborator

Ptr314 commented May 26, 2023

@facetoe Hi! Can't reach you by email. Could you please add me as a collaborator at PyPi so I could upload new releases? My acсount there it ptr314 too.

@kenny291
Copy link

Hi @Ptr314, Could you open a merge request? I can help test some endpoints.

@Ptr314
Copy link
Collaborator

Ptr314 commented Jun 25, 2023

Hi @kenny291 just made a pull request with my fixes.

@gkatechis
Copy link

Hi again from Zendesk! I wanted to follow up on this because it looks like the changes haven't been pushed yet. As a reminder, on August 15, 2023, OBP requests over the first 100 pages (10,000 records) will result in an error message: “400 Bad Request.” In order to request data sets larger than 10,000 records, you will need to transition to CBP.

@lidalei
Copy link

lidalei commented Jul 25, 2023

Hi again from Zendesk! I wanted to follow up on this because it looks like the changes haven't been pushed yet. As a reminder, on August 15, 2023, OBP requests over the first 100 pages (10,000 records) will result in an error message: “400 Bad Request.” In order to request data sets larger than 10,000 records, you will need to transition to CBP.

Hi Zendesk, could you sponsor this project if you haven't? Thanks!

@kenny291
Copy link

@Ptr314 , could you grant me edit permission for your PR branch, There are some APIs that did not work as expected.

@cryptomail
Copy link
Collaborator

To update the team.... we are working on a Draft PR that solves these issues.
@Ptr314 and @kenny291 and I have contributed to the PR and so far it tests extremely well on newer versions of Python. Soon we'll come up with a test/merge/adoption plan. Stay tuned!

@cryptomail
Copy link
Collaborator

Merged, packaged, done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants