Developer
Get Support
Sign in
Get Support
Sign in
DOCUMENTATION
Cloud
Data Center
Resources
Sign in
Sign in
DOCUMENTATION
Cloud
Data Center
Resources
Sign in
Last updated Oct 29, 2025

Project has issue

The ProjectHasIssue relationship represents the link between a Jira project and its associated Jira issues within the Teamwork Graph. It allows you to:

  • Retrieve issues for a specific project
  • Find the parent project for a given Jira issue
  • Traverse and analyze project-issue relationships

Relationship type: Canonical

From object typeTo object type
Jira project - ati:cloud:jira:projectJira issue - ati:cloud:jira:issue

Cypher

We recommend using parameterized Cypher queries rather than placing parameters directly in the query string. This helps improve performance.

Forward query

GraphQL
1
2
query ProjectHasIssue_CypherQuery($cypherQuery: String!, $params: JSON!) {
 graphStore @optIn(to: ["GraphStore", "GraphStoreCypherQueryV2"]) {
  cypherQueryV2(query: $cypherQuery, params: $params) {
   edges {
    node {
     columns {
      key
      value {. on GraphStoreCypherQueryV2NodeList {
        nodes {
         data {. on JiraIssue {
           id
          }
         }
        }
       }. on GraphStoreCypherQueryV2AriNode {
        data {. on JiraIssue {
          id
         }
        }
       }. on GraphStoreCypherQueryV2BooleanObject {
        bool_val: value
       }. on GraphStoreCypherQueryV2IntObject {
        int_val: value
       }. on GraphStoreCypherQueryV2FloatObject {
        float_val: value
       }. on GraphStoreCypherQueryV2StringObject {
        str_val: value
       }
      }
     }
    }
   }
  }
 }
}
Params
1
2
{
 "cypherQuery": "MATCH (project:JiraProject {ari: $id})-[:project_has_issue]->(issue:JiraIssue) RETURN issue",
 "params": {
  "id": "$id"
 }
}

Inverse query

GraphQL
1
2
query ProjectHasIssue_CypherQuery($cypherQuery: String!, $params: JSON!) {
 graphStore @optIn(to: ["GraphStore", "GraphStoreCypherQueryV2"]) {
  cypherQueryV2(query: $cypherQuery, params: $params) {
   edges {
    node {
     columns {
      key
      value {. on GraphStoreCypherQueryV2NodeList {
        nodes {
         data {. on JiraProject {
           id
          }
         }
        }
       }. on GraphStoreCypherQueryV2AriNode {
        data {. on JiraProject {
          id
         }
        }
       }. on GraphStoreCypherQueryV2BooleanObject {
        bool_val: value
       }. on GraphStoreCypherQueryV2IntObject {
        int_val: value
       }. on GraphStoreCypherQueryV2FloatObject {
        float_val: value
       }. on GraphStoreCypherQueryV2StringObject {
        str_val: value
       }
      }
     }
    }
   }
  }
 }
}
Params
1
2
{
 "cypherQuery": "MATCH (project:JiraProject)-[:project_has_issue]->(issue:JiraIssue {ari: $id}) RETURN project",
 "params": {
  "id": "$id"
 }
}

Metadata

To metadata

NameTypeDescription
assigneeAriAri (Message)ARI of the user assigned to this issue.
statusAriAri (Message)ARI of the current status of this issue.
issueAriAri (Message)ARI of the issue itself.
creatorAriAri (Message)ARI of the user who created this issue.
reporterAriAri (Message)ARI of the user who reported this issue.
issueTypeAriAri (Message)ARI of the issue type (Bug, Story, Task, etc.).
fixVersionIdsLongIDs of fix versions associated with this issue.

Relationship metadata

Ari

When filtering by ARI in GraphQL, it will behave as a String rather than a message as shown below.

NameTypeDescription
valueStringThe ARI string value identifying the user or resource.

Rate this page: