Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

When will Teams and Teams Members APIs work with Forge Apps?

Vlad B - agileCCPM June 16, 2025

@April Chi ,

 

I would appreciate getting some insights on when you guys plan to make it possible to use Teams Public APIs and especially the Teams Members Public API with Forge Apps so that these APIs worked as the rest of Jira APIs without a need for an app that needs these API to loose "Runs on Atlassian" status/badge.

As the documentation for the APis says, "Forge and OAuth2 apps cannot access this REST resource."

There are multiple use cases when Forge Apps need to work with Teams and Team Members, like capacity management, preliminary/high-level projects planning (e.g, at the portfolio level) with assigning teams and then specifying a member of the team at the moment the project is selected for execution, calculations of load in a project or epic by team and by a specific team member, and many more valuable use-cases.

 

I know that there is a workaround with using GraphQL for the Teams API, as described in this post., and the GraphQL approach does work for me for just the team information.

However, same as described in the post above, when I try to get the member id (atlassian accountId), e.g, using this query below, there is a scope error:

 

query getTeams ($organizationId: ID!, $siteId: String!, $first: Int, $after: String) {
team {
teamSearchV2(
organizationId: $organizationId
siteId: $siteId
first: $first
after: $after
) {
nodes {
memberCount
team {
id
displayName
description
state
membershipSettings
members {
nodes {
state
role
member {
id
}
}
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
}

 

There is the following error:

{
errors: [
{
message: 'This request does not contain the right authorisation scopes to access this field',
locations: [],
path: [
'team',
'teamSearchV2',
'nodes',
'team',
'members',
'nodes',
'member'
],
extensions: [
requiredScopes: [ 'identity:atlassian-external' ],
providedScopes: [
'manage:jira-project',
'read:issue:jira-software',
'read:jira-work',
'storage:app',
'view:membership:teams',
'read:project:jira',
'read:jira-user',
'manage:jira-configuration',
'read:issue-details:jira',
'view:team:teams',
'read:jql:jira',
'read:epic:jira-software',
'read:sprint:jira-software',
'write:jira-work',
'write:sprint:jira-software',
'read:board-scope:jira-software'
],
errorSource: 'GRAPHQL_GATEWAY',
statusCode: 403,
agg: { severity: 'NORMAL', ugcPiiSafe: true },
classification: 'InsufficientOAuthScopes'
]
}
],
data: { team: { teamSearchV2: [Object] } },
extensions: {
gateway: {
request_id: '17b821eb-4816-40a6-8a4c-e603d00b1ea3',
trace_id: '66f467e03fc04a468650a697fd26fee0',
crossRegion: false,
edgeCrossRegion: false
}
}
}

 

This problem prevents in particual our app from releasing the next functionality requested by our customers. The new functionality needs these APIs to be available.

The only workaround I found at the moment is VERY bad, resulting in the app losing "Runs on Atlasian" status. The workaround adds Jira API as an external remote, e.g. this way:

permissions:
external:
fetch:
backend:
- remote: jira-api-backend
remotes:
- key: jira-api-backend
baseUrl: "https://api.atlassian.com"
operations:
- fetch

 and asks the user for the API token, allowing the app to make calls to the REST API using the Basic authentication header. This is the only way I can get the Membership info in a Forge app at the moment.

 

As you can see in the post I referenced above, there are multiple people who are facing the same issue.

I also believe there is a ticket that is probably related, though it has fewer details:

https://jira.atlassian.com/browse/JRACLOUD-92072

 

I would really appreciate it if you could share some information if you guys have already planned any work to have this resolved, any ETA, maybe any workarounds I was not able to find (I spent over 3 full days searching all possible places and solutions that are available).

 

Thank you!

2 comments

Comment

Log in or Sign up to comment
April Chi
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
June 25, 2025

Hey @Vlad B - agileCCPM ,

Thanks for your post and appreciate the feedback!

First off, I understand the frustration. We're trying our best to improve foundational Atlassian Teams experiences starting with adding more useful features to Teams.

Forge OAuth is currently on our radar but we're not working on at the moment.

At the moment, we intend to explore it November onwards. It's currently too early to tell when we're confident this will be released, but there is a goal to have addressed some of these problems by the end of next year.

In saying that, I'm happy to keep you in the loop as an early adopter either through the ticket https://jira.atlassian.com/browse/JRACLOUD-92072 or if you send me your details over email, I can touch bases with you when we get to it next quarter. 

Let me know what you prefer.

I'll also speak to my engineering team and see if there's any workaround we can figure out. 

Regards,

April

Like Vlad B - agileCCPM likes this
Vlad B - agileCCPM June 25, 2025

@April Chi ,

I appreciate your getting back to me on this.

I've commented in the ticket you mentioned that I would be happy to be on the list of early adopters, would also be glad to connect via email. Is there a way I can DM my email to you?

 

Any workarounds that would allow getting the data without losing the Runs on Atlassian status are greatly appreciated. Maybe if there is a way to make it so that if a remote to an Atlassian API, e.g. the one in the example above ("https://api.atlassian.com") is added, it would not lead to the status invalidation.

 

We have existing and potential customers asking us for functionality that relies on Teams Members APIs, and we would appreciate any help on being able to deliver it faster.

Admin July 4, 2025

I definitely support this. For creating apps for professional project planning, I wonder how it can even be possible without this API access. 

In our case, we need to see when a member or team is not available in a specific time interval. Because of individual holidays or bank holidays, or for other reasons like planned workshops or training courses. 

Without this information, our plans and buffers are significantly wrong, from the very beginning.

Like Vlad B - agileCCPM likes this
TAGS
AUG Leaders

Atlassian Community Events