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

如何通过GitHub GraphQL API获取项目Issue的Status字段?

解决GitHub GraphQL API查询Project V2 Status字段的问题

错误原因拆解

  1. 你在ProjectV2ItemFieldSingleSelectValue类型下调用了不存在的status字段,这是导致undefinedField错误的直接原因。
  2. 你尝试的ProjectV2ItemFieldCustomSingleSelectValue类型并非GitHub GraphQL API定义的合法类型,自然无法返回数据。

正确查询写法

针对GitHub Project V2的单选型自定义字段(比如「Status」),正确的查询需要使用ProjectV2ItemFieldSingleSelectValue类型,并读取官方定义的name(选项显示名称)或optionId(选项唯一标识)字段:

fieldValueByName(name: "Status") {
  ... on ProjectV2ItemFieldSingleSelectValue {
    name
    optionId
  }
}

如果需要同时获取该字段的元信息(比如字段本身的名称、描述),可以扩展查询:

fieldValueByName(name: "Status") {
  ... on ProjectV2ItemFieldSingleSelectValue {
    name
    optionId
    field {
      ... on ProjectV2FieldSingleSelect {
        name
        description
      }
    }
  }
}

完整可运行查询示例

结合你提供的查询结构,修正后的完整版本如下:

query($cursor: String) {
  organization(login: "your-organization") {
    projectV2(number: 123) { 
      items(first: 100, after: $cursor) {
        nodes {
          id
          content {
            ... on Issue { 
              title
              number
              url
            }
          }
          fieldValueByName(name: "Status") { 
            ... on ProjectV2ItemFieldSingleSelectValue {
              name
              optionId
            }
          }
        }
        pageInfo {
          hasNextPage
          endCursor
        }
      }
    }
  }
}

权限排查建议

你最初遇到的KeyError("The 'data' field is missing from the response. Check your query or token permissions.")错误,需确认访问Token的权限:

  • 个人访问Token(PAT)必须勾选read:project权限
  • GitHub App需开启projects的读取权限

避坑提醒

  • 区分ProjectV2ItemFieldSingleSelectValue(项目项的字段值)和ProjectV2FieldSingleSelect(字段元数据)两种类型
  • 自定义单选型字段没有status或customFieldSingleSelectValue这类非官方字段,仅可使用API文档定义的name、optionId、field等字段
  • 字段名称"Status"需严格匹配项目中自定义字段的显示名称(大小写敏感)

内容的提问来源于stack exchange,提问作者Javier V.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 07:47:11