I am having a little trouble with something that I think should be quite simple. I've created an OAuth2 (3LO) app for Jira (on Atlassian Cloud) and have successfully connected to it with my app (i.e.: got the token and I can call the API).
I call the API to get the correct "cloudId" as the documentation states.
The user that I am authenticating with when connecting via OAuth2 is an Administrator for the Jira project that I am trying to query.
When I use this endpoint:
I get a response, but an empty one (i.e.: no projects listed):
> {"jira":{"self":"https://api.atlassian.com/ex/jira/[my-cloud-id]/rest/api/3/project/search?maxResults=50&startAt=0","maxResults":50,"startAt":0,"total":0,"isLast":true,"values":[]}}
The documentation states, as I understand it, that I should get a list of any project that the logged in user has "browse" or "administration" permissions for. My user has both.
Has anyone had a similar trouble?
Thanks in advance,
Ben
----------
Edit: searching by a specific project key works.
> https://api.atlassian.com/ex/jira/[my-cloud-id]/rest/api/3/project/TESTJ
So I therefore no longer think that this is a permissions issue.
The URL:
> https://api.atlassian.com/ex/jira/[my-cloud-id]/rest/api/3/project/search
Still returns an empty list of projects. I wonder if I am missing some kind of important parameter on this call?
Oops! This is my fault. Thank you @Bill Sheboy for the answer and indeed you are correct that the endpoint works.
I simply had the required HTTP header set to:
> token <token>
Instead of:
> Bearer <token>
So muppetry on my part, but perhaps this will help someone else one day!
Hi @benji78
I am glad that worked for you. To help others find the solution faster, please consider marking this question as answered. Thanks!
__Bill
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @benji78 -- Welcome to the Atlassian Community!
I just tried getAllProjects and it worked for me:
https://docs.atlassian.com/software/jira/docs/api/REST/1000.824.0/#api/2/project-getAllProjects
Best regards,
Bill
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Bill Sheboy thanks for your reply.
I had not seen this documentation before, so thank you for the reference. However, is seems that this API is authenticated via OAuth 1.0a or HTTP Basic Auth? I am attempting to support OAuth 2.0.
When I call the endpoint that you cite I get all public repositories, rather then private ones that I have access to. This implies to me that the API is not using my access token to authenticate.
I also note that the API root is different. In the API that you reference it is `https://jira.atlassian.com` but in the OAuth2 API it is `https://api.atlassian.com` with the latter requiring the "cloud ID" to be present in the URL.
Using the OAuth2 API here are my results:
`https://api.atlassian.com/ex/jira/${jiraUser.extra.cloudId}/rest/api/2/project/TESTJ`
> {"jira":{"expand":"description,lead,issueTypes,url,projectKeys,permissions,insight","self":"https://api.atlassian.com/ex/jira/ceef92b6-5ab7-4202-861d-ca1b2c54346d/rest/api/2/project/10000","id":"10000","key":"TESTJ"
`https://api.atlassian.com/ex/jira/${jiraUser.extra.cloudId}/rest/api/2/project`
> {"jira":[]}
And the same responses from the version 3 URLs.
It seems suspicious to me that specifying `TESTJ` at the end of the URL renders a result, but leaving this out does not return all projects...
Cheers,
Ben
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.