GitHub GraphQL adds issue field schema and value types
Introduced 2026-03-12 · score 0.97
HOW TO USE IT
When tooling must read issue field definitions and values, query `Repository.issueFields` and `Issue.issueFieldValues`, selecting concrete union members with inline fragments. Use `IssueFieldCommon` and `IssueFieldValueCommon` for shared fields; `IssueFieldCreateOrUpdateInput` is for supplying values, not reading them.
query($owner: String!, $name: String!, $first: Int!) { repository(owner: $owner, name: $name) { issueFields(first: $first) { nodes { __typename ... on IssueFieldCommon { id name createdAt dataType description visibility } ... on IssueFieldSingleSelect { options { id name color priority } } } pageInfo { hasNextPage endCursor } } } }query($owner: String!, $name: String!, $number: Int!, $first: Int!) { repository(owner: $owner, name: $name) { issue(number: $number) { issueFieldValues(first: $first) { nodes { __typename ... on IssueFieldValueCommon { field { __typename ... on IssueFieldCommon { id name dataType } } } ... on IssueFieldDateValue { value } ... on IssueFieldNumberValue { value } ... on IssueFieldSingleSelectValue { name } ... on IssueFieldTextValue { value } } pageInfo { hasNextPage endCursor } } } } }WHY THIS HELPS
Build tooling that reads issue field definitions and values through the GitHub GraphQL API.
REQUIREMENTS AND LIMITATIONS
- repository(owner:, name:) (required): Selects the repository by owner and name.
- issue(number:) (required): Selects the issue by its number in the repository.
- first: Returns the first n connection elements; use `pageInfo` and `after` to paginate.
- IssueFieldCreateOrUpdateInput.fieldId (required): ID of the issue field.
- IssueFieldCreateOrUpdateInput.dateValue: Date field value.
- IssueFieldCreateOrUpdateInput.numberValue: Numeric field value.
- IssueFieldCreateOrUpdateInput.singleSelectOptionId: ID of the selected single-select option.
- IssueFieldCreateOrUpdateInput.textValue: Text field value.
- IssueFieldCreateOrUpdateInput.delete: Set true to delete the field value.
- IssueFieldSingleSelectOptionInput.color (required): Option display color: BLUE, GRAY, GREEN, ORANGE, PINK, PURPLE, RED, or YELLOW.
- IssueFieldSingleSelectOptionInput.name (required): Option name.
- IssueFieldSingleSelectOptionInput.priority (required): Option priority order.
- IssueFieldOrder.direction (required): Ordering direction.
- IssueFieldOrder.field (required): Ordering field: NAME or CREATED_AT.
- `IssueFieldCreateOrUpdateInput` requires `fieldId`; its value fields include `dateValue`, `numberValue`, `singleSelectOptionId`, and `textValue`.
- The added field data types are `DATE`, `NUMBER`, `TEXT`, and `SINGLE_SELECT`.
- The added visibility values are `ALL` and `ORG_ONLY`.
- The added issue field order values are `NAME` and `CREATED_AT`.
- Single-select options require `color`, `name`, and `priority`; `color` accepts `BLUE`, `GRAY`, `GREEN`, `ORANGE`, `PINK`, `PURPLE`, `RED`, or `YELLOW`.
- Docs conflict: Current official schema docs list the additional `MULTI_SELECT` field and value types, beyond the four types stated in the card; current docs also add `multiSelectOptionIds`, `confidence`, `rationale`, and `suggest` to `IssueFieldCreateOrUpdateInput`. The current docs are newer than the 2026-03-12 change. https://docs.github.com/en/graphql/reference/issues
- Docs conflict: Current changelog documents `Repository.issueFields` and its pagination/order arguments in a later schema change than 2026-03-12. https://docs.github.com/en/graphql/overview/changelog?apiVersion=2022-11-28
FIRST-PARTY EVIDENCE
- https://docs.github.com/en/graphql/overview/changelog#schema-changes-for-2026-03-12
- https://docs.github.com/en/graphql/reference/repos
- https://docs.github.com/en/graphql/reference/issues
Check the installed version and the source before using it. Entry JSON