Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Paging in Bitbucket REST API

Oliver Lipkau January 18, 2018

Hi.

I am using the docs @ https://docs.atlassian.com/bitbucket-server/rest/5.7.0/bitbucket-rest.html#paging-params

I am querying my server with: https://server/rest/api/latest/repos?limit=4

I was expecting the answer to be something like:

{
        "size": 4,
        "limit": 4,
        "isLastPage": false,
        "values": [ ...
        ],
        "start": 0,
        "nextPageStart": 4
    }

but what I got was:

{
        "size": 4,
        "limit": 4,
        "isLastPage": false,
        "values": [ ...
        ],
        "start": 0,
        "nextPageStart": 36
    }

So my code uses "nextpageStart" of 36 for the next query (as the docs say it should), but

https://server/rest/api/latest/repos?limit=4?start=36 returns StatusCode 500 (because there are no 36 results for that query).

 

What should I do to get the paging to work?

 

Thanks

Oliver

2 answers

0 votes
Shiva hari kumar B July 9, 2020

I did this in python, the parameter is start and the value for the start parameter is availabled at nextPageStart in json response if there is indeed next page, availability of next page can be checked by isLastPage in json response

 

def get_project_key_list(self, start='0'):
r = self.__call_service('rest/api/1.0/projects', params={'start': start, 'limit': '25'})
keys = list()
for value in r.json()['values']:
keys.append(value['key'])
if not(r.json()['isLastPage']):
keys = keys + self.get_project_key_list(start=str(r.json()['nextPageStart']))
return keys
0 votes
Oliver Lipkau February 6, 2018

anyone?

seungcheol_chang March 24, 2020

Do you have this solution now?
I also find out it :)
Maybe if you got it, share it for me.
ttooxx@naver.com
or seungcheol.chang@gmail.com

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events