About breaking changes
Breaking changes are any changes that might require action from our integrators. We divide these changes into two categories:
- Breaking: Changes that will break existing queries to the GraphQL API. For example, removing a field would be a breaking change.
 - Dangerous: Changes that won't break existing queries but could affect the runtime behavior of clients. Adding an enum value is an example of a dangerous change.
 
We strive to provide stable APIs for our integrators. When a new feature is still evolving, we release it behind a schema preview.
We'll announce upcoming breaking changes at least three months before making changes to the GraphQL schema, to give integrators time to make the necessary adjustments. Changes go into effect on the first day of a quarter (January 1st, April 1st, July 1st, or October 1st). For example, if we announce a change on January 15th, it will be made on July 1st.
Changes scheduled for 2024-07-01
- Breaking A change will be made to 
TeamDiscussionComment.url.Description:urlwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussionComment.resourcePath.Description:resourcePathwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussionComment.number.Description:numberwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussionComment.discussion.Description:discussionwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussionComment.bodyVersion.Description:bodyVersionwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussionComment.authorAssociation.Description:authorAssociationwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.viewerCanPin.Description:viewerCanPinwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.url.Description:urlwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.title.Description:titlewill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.team.Description:teamwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.resourcePath.Description:resourcePathwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.number.Description:numberwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.isPrivate.Description:isPrivatewill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.isPinned.Description:isPinnedwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.commentsUrl.Description:commentsUrlwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.commentsResourcePath.Description:commentsResourcePathwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.comments.Description:commentswill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.bodyVersion.Description:bodyVersionwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
TeamDiscussion.authorAssociation.Description:authorAssociationwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionPayload.teamDiscussion.Description:teamDiscussionwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionInput.title.Description:titlewill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionInput.teamId.Description:teamIdwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionInput.private.Description:privatewill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionInput.body.Description:bodywill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionCommentPayload.teamDiscussionComment.Description:teamDiscussionCommentwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionCommentInput.discussionId.Description:discussionIdwill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
- Breaking A change will be made to 
CreateTeamDiscussionCommentInput.body.Description:bodywill be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.Reason:The Team Discussions feature is deprecated in favor of Organization Discussions.
 
Changes scheduled for 2023-10-01
- Breaking A change will be made to 
PullRequestReviewComment.position.Description:positionwill be removed. Use thelineandstartLinefields instead, which are file line numbers instead of diff line numbersReason:We are phasing out diff-relative positioning for PR comments
 
- Breaking A change will be made to 
PullRequestReviewComment.originalPosition.Description:originalPositionwill be removed.Reason:We are phasing out diff-relative positioning for PR comments
 
- Breaking A change will be made to 
AddPullRequestReviewInput.comments.Description:commentswill be removed. use thethreadsargument insteadReason:We are deprecating comment fields that use diff-relative positioning
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.pullRequestReviewId.Description:pullRequestReviewIdwill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.pullRequestId.Description:pullRequestIdwill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.position.Description:positionwill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.path.Description:pathwill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.inReplyTo.Description:inReplyTowill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.commitOID.Description:commitOIDwill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
- Breaking A change will be made to 
AddPullRequestReviewCommentInput.body.Description:bodywill be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply insteadReason:We are deprecating the addPullRequestReviewComment mutation
 
Changes scheduled for 2023-07-01
- Breaking A change will be made to 
ProjectV2ItemFieldGroup.field.Description:fieldwill be removed. Check out theProjectV2ItemFieldGroup#groupByFieldAPI as an example for the more capable alternative.Reason:The
ProjectV2ItemFieldGroup#fieldAPI is deprecated in favour of the more capableProjectV2ItemFieldGroup#groupByFieldAPI. 
- Breaking A change will be made to 
Commit.pushedDate.Description:pushedDatewill be removed.Reason:pushedDateis no longer supported. 
Changes scheduled for 2023-04-01
- Breaking A change will be made to 
Repository.squashPrTitleUsedAsDefault.Description:squashPrTitleUsedAsDefaultwill be removed. UseRepository.squashMergeCommitTitleinstead.Reason:squashPrTitleUsedAsDefaultwill be removed. 
- Breaking A change will be made to 
ProjectV2View.verticalGroupBy.Description:verticalGroupBywill be removed. Check out theProjectV2View#vertical_group_by_fieldsAPI as an example for the more capable alternative.Reason:The
ProjectV2View#vertical_group_byAPI is deprecated in favour of the more capableProjectV2View#vertical_group_by_fieldsAPI. 
- Breaking A change will be made to 
ProjectV2View.sortBy.Description:sortBywill be removed. Check out theProjectV2View#sort_by_fieldsAPI as an example for the more capable alternative.Reason:The
ProjectV2View#sort_byAPI is deprecated in favour of the more capableProjectV2View#sort_by_fieldsAPI. 
- Breaking A change will be made to 
ProjectV2View.groupBy.Description:groupBywill be removed. Check out theProjectV2View#group_by_fieldsAPI as an example for the more capable alternative.Reason:The
ProjectV2View#order_byAPI is deprecated in favour of the more capableProjectV2View#group_by_fieldAPI. 
Changes scheduled for 2023-02-10
- Breaking A change will be made to 
PackageType.MAVEN.Description:MAVENwill be removed.Reason:MAVEN will be removed from this enum as this type will be migrated to only be used by the Packages REST API.
 
Changes scheduled for 2023-01-01
- Breaking A change will be made to 
ProjectV2View.visibleFields.Description:visibleFieldswill be removed. Check out theProjectV2View#fieldsAPI as an example for the more capable alternative.Reason:The
ProjectV2View#visibleFieldsAPI is deprecated in favour of the more capableProjectV2View#fieldsAPI. 
- Breaking A change will be made to 
Commit.changedFiles.Description:changedFileswill be removed. UsechangedFilesIfAvailableinstead.Reason:changedFileswill be removed. 
Changes scheduled for 2022-12-28
- Breaking A change will be made to 
PackageType.RUBYGEMS.Description:RUBYGEMSwill be removed.Reason:RUBYGEMS will be removed from this enum as this type will be migrated to only be used by the Packages REST API.
 
Changes scheduled for 2022-11-21
- Breaking A change will be made to 
PackageType.NUGET.Description:NUGETwill be removed.Reason:NUGET will be removed from this enum as this type will be migrated to only be used by the Packages REST API.
 
- Breaking A change will be made to 
PackageType.NPM.Description:NPMwill be removed.Reason:NPM will be removed from this enum as this type will be migrated to only be used by the Packages REST API.
 
Changes scheduled for 2022-10-01
- Breaking A change will be made to 
RemovePullRequestFromMergeQueueInput.branch.Description:branchwill be removed.Reason:PRs are removed from the merge queue for the base branch, the
branchargument is now a no-op 
- Breaking A change will be made to 
DependencyGraphDependency.packageLabel.Description:packageLabelwill be removed. Use normalizedpackageNamefield instead.Reason:packageLabelwill be removed. 
Changes scheduled for 2022-07-01
- Breaking A change will be made to 
AddPullRequestToMergeQueueInput.branch.Description:branchwill be removed.Reason:PRs are added to the merge queue for the base branch, the
branchargument is now a no-op 
Changes scheduled for 2021-10-01
- Breaking A change will be made to 
ReactionGroup.users.Description:userswill be removed. Use thereactorsfield instead.Reason:Reactors can now be mannequins, bots, and organizations.
 
Changes scheduled for 2021-06-21
- Breaking A change will be made to 
PackageType.DOCKER.Description:DOCKERwill be removed.Reason:DOCKER will be removed from this enum as this type will be migrated to only be used by the Packages REST API.
 
Changes scheduled for 2021-01-01
- Breaking A change will be made to 
MergeStateStatus.DRAFT.Description:DRAFTwill be removed. Use PullRequest.isDraft instead.Reason:DRAFT state will be removed from this enum and
isDraftshould be used instead 
Changes scheduled for 2020-10-01
- Breaking A change will be made to 
PullRequest.timeline.Description:timelinewill be removed. Use PullRequest.timelineItems instead.Reason:timelinewill be removed 
- Breaking A change will be made to 
Issue.timeline.Description:timelinewill be removed. Use Issue.timelineItems instead.Reason:timelinewill be removed 
Changes scheduled for 2020-01-01
- Breaking A change will be made to 
UnassignedEvent.user.Description:userwill be removed. Use theassigneefield instead.Reason:Assignees can now be mannequins.
 
- Breaking A change will be made to 
AssignedEvent.user.Description:userwill be removed. Use theassigneefield instead.Reason:Assignees can now be mannequins.
 
Changes scheduled for 2019-04-01
- Breaking A change will be made to 
LegacyMigration.uploadUrlTemplate.Description:uploadUrlTemplatewill be removed. UseuploadUrlinstead.Reason:uploadUrlTemplateis being removed because it is not a standard URL and adds an extra user step.