The Teamwork Graph API is available through Forge's Early Access Program (EAP).
EAPs are offered to selected users for testing and feedback purposes. These features are unsupported and are subject to change without notice.
You must only install apps that call the Teamwork Graph API in test organizations. Apps calling
the Teamwork Graph API require the read:graph:jiraor read:graph:confluence scope, which provides access to Teamwork Graph
data across your entire organization. While apps still respect end-user permissions, this scope may
grant access to sensitive information. For safety, only install these apps in organizations with test
data unless you have an approved path to production.
Additionally, this EAP has significant limitations. To review the full list of limitations, see Limitations and considerations.
You must be part of this EAP in order to use the Teamwork Graph API. Express interest in joining through this form.
The ContentEntityLinksEntity relationship represents the link between content items and entities they reference or mention within the Teamwork Graph. It allows you to:
Relationship type: Canonical
TTL (Time To Live): 730 days
| From object types | To object types |
|---|---|
Confluence blogpost - ati:cloud:confluence:blogpost | All types that can be extracted by Atlassian's "Object Resolver Service". |
Confluence page - ati:cloud:confluence:page | |
External branch - ati:cloud:jira:branch, ati:cloud:graph:branch | |
External build - ati:cloud:jira:build, ati:cloud:graph:build | |
External calendar event - ati:cloud:graph:calendar-event | |
External comment - ati:cloud:graph:comment | |
External commit - ati:cloud:jira:commit, ati:cloud:graph:commit | |
External conversation - ati:cloud:graph:conversation | |
External data table - ati:cloud:graph:data-table | |
External deployment - ati:cloud:jira:deployment, ati:cloud:graph:deployment | |
External design - ati:cloud:jira:design, ati:cloud:graph:design | |
External document - ati:cloud:jira:document, ati:cloud:graph:document | |
External message - ati:cloud:graph:message | |
External project - ati:cloud:graph:project | |
External pull request - ati:cloud:jira:pull-request, ati:cloud:graph:pull-request | |
External repository - ati:cloud:jira:repository, ati:cloud:graph:repository | |
External video - ati:cloud:graph:video | |
External vulnerability - ati:cloud:jira:vulnerability, ati:cloud:graph:vulnerability | |
External work item - ati:cloud:graph:work-item | |
Jira work item - ati:cloud:jira:issue | |
Jira work item comment - ati:cloud:jira:issue-comment |
We recommend sending parameterized Cypher queries as below instead of embedding the parameters directly in the query string. This approach will help ensure better performance.
1 2query ContentEntityLinksEntity_CypherQuery($cypherQuery: String!, $params: CypherRequestParams) { cypherQuery(query: $cypherQuery, params: $params) { edges { node { columns { value { ... on CypherQueryResultNode { id data { __typename ... on CompassComponent { id } ... on CompassComponentLink { id } ... on CompassScorecard { id } ... on ConfluenceBlogpost { id } ... on ConfluenceComment { id } ... on ConfluenceDatabase { id } ... on ConfluenceEmbed { id } ... on ConfluencePage { id } ... on ConfluenceSpace { id } ... on ConfluenceWhiteboard { id } ... on ExternalCustomerContact { id } ... on ExternalCustomerOrgCategory { id } ... on ExternalOrganisation { id } ... on ExternalPosition { id } ... on ExternalWorkItem { id } ... on ExternalWorker { id } ... on ExternalBranch { id } ... on ExternalBuild { id } ... on ExternalCalendarEvent { id } ... on ExternalComment { id } ... on ExternalCommit { id } ... on ExternalConversation { id } ... on ExternalCustomerOrg { id } ... on ExternalDashboard { id } ... on ExternalDataTable { id } ... on ExternalDeal { id } ... on ExternalDeployment { id } ... on ExternalDesign { id } ... on ExternalDocument { id } ... on ExternalFeatureFlag { id } ... on ExternalMessage { id } ... on ExternalProject { id } ... on ExternalPullRequest { id } ... on ExternalRemoteLink { id } ... on ExternalRepository { id } ... on ExternalService { id } ... on ExternalSpace { id } ... on ExternalVideo { id } ... on ExternalVulnerability { id } ... on AtlassianTeam { id } ... on AtlassianTeamCustomFieldValue { id } ... on AtlassianTeamType { id } ... on AtlassianUser { id } ... on JiraBoard { id } ... on JiraWorkItem { id } ... on JiraWorkItemComment { id } ... on JiraWorkItemPriority { id } ... on JiraWorkItemRemoteLink { id } ... on JiraWorkItemStatus { id } ... on JiraSpace { id } ... on JiraSprint { id } ... on JiraVersion { id } ... on JiraWorkItemWorklog { id } ... on LoomComment { id } ... on LoomMeeting { id } ... on LoomMeetingRecurrence { id } ... on LoomSpace { id } ... on LoomVideo { id } ... on FocusChangeProposal { id } ... on FocusFocusArea { id } ... on OpsgenieTeam { id } ... on AtlassianHomeComment { id } ... on AtlassianGoal { id } ... on AtlassianGoalUpdate { id } ... on AtlassianProject { id } ... on AtlassianProjectUpdate { id } ... on AtlassianHomeTag { id } } } } } } } } }
1 2{ "cypherQuery": "MATCH (blogpost:ConfluenceBlogpost {ari: $id})-[:content_entity_links_entity]->(session:AgentSession) RETURN session", "params": { "id": "$id" } }
Rate this page: