You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过GitHub GraphQL API从Issue ID获取Project V2中的项目项ID

如何通过GitHub GraphQL API根据Issue ID获取Project V2中的项目项ID

完全可以实现这个需求,核心是利用Issue对象与Project V2项目项的关联字段来查询。

基础查询示例

以下GraphQL查询可根据Issue的全局ID获取其关联的所有Project V2项目项信息,包含项目项ID:

query GetProjectItemsForIssue($issueId: ID!) {
  node(id: $issueId) {
    ... on Issue {
      projectItems(first: 10) {
        nodes {
          id # 这就是你要的项目项ID
          project {
            id
            title # 项目名称,方便区分不同Project V2
          }
        }
      }
    }
  }
}

参数说明

  • $issueId:需传入Issue的GitHub全局ID(格式通常为I_开头的字符串),如果只有Issue的数字编号,可以先通过简单查询获取其全局ID,或者直接将数字编号转换为全局ID(例如编号为123的Issue,全局ID格式类似I_kwDOABCDEfg123,具体取决于你的仓库)

过滤特定Project V2的项目项

如果Issue关联了多个Project V2,且你只需要某个特定项目的项目项ID,可以添加filterBy条件精准筛选:

query GetTargetProjectItemForIssue($issueId: ID!, $projectId: ID!) {
  node(id: $issueId) {
    ... on Issue {
      projectItems(first: 10, filterBy: {projectId: $projectId}) {
        nodes {
          id
          project {
            title
          }
        }
      }
    }
  }
}

注意事项

  • 确保你的API令牌拥有对应权限:如果是私有仓库/项目,需要repo权限;如果是组织公开项目,至少需要project:read权限
  • first参数用于限制返回结果数量,可根据实际需求调整(最大支持100)

内容的提问来源于stack exchange,提问作者nakaakist

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 10:13:29