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

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,458,309
Community Members
 
Community Events
176
Community Groups

Jira Software Cloud REST API not respecting maxResults

Deleted user Mar 02, 2021

Trying to get a list of 11,450 Jira Issues (3 fields) with the fewest number of requests possible (because the endpoint is being called by Salesforce which limits REST Callouts to 100/hour).

curl --request POST \
--url 'https://utilant.atlassian.net/rest/api/3/search' \
--user 'USER:PASSWORD' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"jql": "updatedDate>=2021-01-01 AND issuetype!=Test",
"maxResults": 1000,
"fields": [
"issuetype",
"summary",
"customfield_10090"
],
"startAt": 0,
"expand": ["names"]
}'

The above example looks like it would take 12 x REST Callouts to get 11,450 Jira Issues but it actually takes 115. Jira responds as if maxResults was set to 100 in its paginated reply.

{"expand":"schema,names","startAt":0,"maxResults":100,"total":11450,"issues":[...

Salesforce then blocks me when I make my 101st request. Checkmate.

Jira's documentation says, "To manage page size, Jira may return fewer items per page where a large number of fields are requested. The greatest number of items returned per page is achieved when requesting id or key only."

I need 3 fields (none of which are large).

Questions:

  1. Is there a way to reduce my page size? A fair amount of superfluous info is in the response to my query. Selecting any fields other than key or id limit the response to 100 records.
  2. Is there a different call I could make to get this info?

 

2 answers

1 accepted

2 votes
Answer accepted
Warren Rising Star Mar 02, 2021

Hi @[deleted] 

In answer to the main question you have here, Atlassian changed the API a few years ago to limit the maximum number of returned results to 100 (until then it used to be 1000), so the parameter maxResults is more applicable if you're wanting results in chunks smaller than 100, not larger. To reiterate, you cannot get more than 100 results per API call. I realise that doesn't help you with Salesforce!

For your other questions :

  1. No, using the fields parameter as you are limits the actual fields being returned, but there is always some header info which comes through.
  2. As far as I know, all API calls are limited to 100 and all return additional header info.

If this is a one-off (or seldom run) exercise, a solution (whilst not ideal) would be to run the first 100 API calls, then wait until the next hour and run the rest.

Deleted user Mar 03, 2021

@Warren - thanks for the response. Hope Atlassian can improve the documentation a bit more as this had me running in circles for a while (or loops of 100 records).

It's something I have to do monthly to clean up synchronized data. Guess I'll have to apply a different strategy.

0 votes

Hi, has this value been reduced to 50 by now?

image.png

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
PRODUCT PLAN
PREMIUM
PERMISSIONS LEVEL
Site Admin
TAGS

Atlassian Community Events