diff --git a/.github/workflows/changelog-agent.yml b/.github/workflows/changelog-agent.yml index 746bd40e7cb5..e3894303e0f3 100644 --- a/.github/workflows/changelog-agent.yml +++ b/.github/workflows/changelog-agent.yml @@ -417,7 +417,7 @@ jobs: - name: Generate changelog draft via Copilot if: steps.check_parent.outputs.has_parent == 'true' && steps.check_existing.outputs.exists == 'false' id: generate_draft - uses: actions/ai-inference@17ff458cb182449bbb2e43701fcd98f6af8f6570 # v2.1.0 + uses: actions/ai-inference@2c43c91ae16266ca159d311430343c67a5ffa222 # v3 with: provider: copilot # No model is pinned: actions/ai-inference forwards --model to the diff --git a/content/billing/reference/billing-roles.md b/content/billing/reference/billing-roles.md index ca4354a9a475..db959fb1d405 100644 --- a/content/billing/reference/billing-roles.md +++ b/content/billing/reference/billing-roles.md @@ -28,6 +28,11 @@ To add a billing manager, see: * [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/adding-a-billing-manager-to-your-organization#inviting-a-billing-manager) * [AUTOTITLE](/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise) +{% ifversion enterprise-billing-github-app %} + +Enterprise owners can also grant a {% data variables.product.prodname_github_app %} the enterprise billing permission, so that an app can access enterprise billing data through the REST API without using a token that belongs to an individual. For more information, see [AUTOTITLE](/billing/tutorials/automate-usage-reporting). +{% endif %} + ## Organization owners You have full administrative access to your organization. You can: diff --git a/content/billing/tutorials/automate-usage-reporting.md b/content/billing/tutorials/automate-usage-reporting.md index 818873118559..2465ead637a7 100644 --- a/content/billing/tutorials/automate-usage-reporting.md +++ b/content/billing/tutorials/automate-usage-reporting.md @@ -28,10 +28,34 @@ Before you begin this tutorial, make sure that: * Enterprise-level reports: enterprise administrator or billing manager * You’re familiar with making authenticated requests to the REST API. For an introduction, see [AUTOTITLE](/rest/using-the-rest-api). -* You authenticate using a {% data variables.product.pat_v1 %}. The billing usage endpoints do not support {% data variables.product.pat_v2_plural %}. +* You authenticate using a {% data variables.product.pat_v1 %}. The billing usage endpoints do not support {% data variables.product.pat_v2_plural %}.{% ifversion enterprise-billing-github-app %} For enterprise-level reporting, you can authenticate with a {% data variables.product.prodname_github_app %} instead. See [Authenticating with a {% data variables.product.prodname_github_app %}](#authenticating-with-a-github-app).{% endif %} Depending on your reporting needs, you may also want access to an internal system (such as a spreadsheet, database, or BI tool) where you can store and analyze the usage data retrieved from the API. +{% ifversion enterprise-billing-github-app %} + +## Authenticating with a {% data variables.product.prodname_github_app %} + +For enterprise-level reporting, you can authenticate with a {% data variables.product.prodname_github_app %} instead of a {% data variables.product.pat_generic %}. Your automation then does not depend on a token that belongs to an individual enterprise owner or billing manager, so your reports keep running when someone changes role or leaves the enterprise. + +An enterprise owner can grant an app the enterprise billing permission at one of two levels of access: + +* **Read**: The app can retrieve usage reports, budgets, and cost centers. This is the access the reporting in this tutorial requires. +* **Read and write**: The app can create, update, and delete budgets and cost centers, and add or remove resources from cost centers. + +To report on usage with an app: + +1. Register a {% data variables.product.prodname_github_app %} that requests the enterprise billing permission. See [AUTOTITLE](/apps/creating-github-apps/registering-a-github-app/registering-a-github-app). +1. Ask an enterprise owner to install the app on your enterprise. See [AUTOTITLE](/apps/using-github-apps/installing-a-github-app-on-your-enterprise). +1. Generate an installation access token for the enterprise installation. See [AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/generating-an-installation-access-token-for-a-github-app). +1. Send the installation access token in the `Authorization` header of your requests, in place of a {% data variables.product.pat_generic %}. + +An installation access token expires after one hour, so your automation must generate a new token each time it runs or whenever the current token expires. + +For the endpoints an app can call with each permission, see [AUTOTITLE](/rest/authentication/permissions-required-for-github-apps). + +{% endif %} + ## Step 1: Decide what level to report on Decide which account level you want to report on. This determines **which REST API endpoint you’ll call** and what your report will include. @@ -76,7 +100,7 @@ curl -L \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/usage/summary ``` -Replace `ENTERPRISE` with the enterprise slug and set the `GITHUB_TOKEN` environment variable to a {% data variables.product.pat_generic %} with the required billing permissions. +Replace `ENTERPRISE` with the enterprise slug and set the `GITHUB_TOKEN` environment variable to a {% data variables.product.pat_generic %} with the required billing permissions.{% ifversion enterprise-billing-github-app %} Alternatively, set `GITHUB_TOKEN` to an installation access token from a {% data variables.product.prodname_github_app %} with the enterprise billing permission.{% endif %} **Example using the {% data variables.product.prodname_cli %}** diff --git a/content/copilot/reference/ai-models/supported-models.md b/content/copilot/reference/ai-models/supported-models.md index 437348e10ee5..ddf586e41d1c 100644 --- a/content/copilot/reference/ai-models/supported-models.md +++ b/content/copilot/reference/ai-models/supported-models.md @@ -48,7 +48,7 @@ This table lists the AI models available in {% data variables.product.prodname_c ## Supported AI models in {% data variables.copilot.copilot_auto_model_selection_short_cap_a %} -This table lists the supported AI models for {% data variables.copilot.copilot_auto_model_selection_short_cap_a %}. Available models may be limited by model policies. See [AUTOTITLE](/copilot/concepts/models/auto-model-selection). +This table lists the supported AI models for {% data variables.copilot.copilot_auto_model_selection_short_cap_a %}. Available models may be limited by model policies. For example, as the long term support model, GPT-5.3-Codex will be used in the event no other models are available. See[AUTOTITLE](/copilot/concepts/models/fallback-and-lts-models) and [AUTOTITLE](/copilot/concepts/models/auto-model-selection). {% rowheaders %} diff --git a/data/features/enterprise-billing-github-app.yml b/data/features/enterprise-billing-github-app.yml new file mode 100644 index 000000000000..4bae67583c0d --- /dev/null +++ b/data/features/enterprise-billing-github-app.yml @@ -0,0 +1,7 @@ +# Reference: #releases/issues/10425 +# Enterprise owners can grant a GitHub App the enterprise billing fine-grained permission +# (Read, or Read and write) so that an app installation access token can call the enterprise +# billing REST API routes. +versions: + ghec: '*' + ghes: '>=3.23' diff --git a/data/reusables/enterprise-accounts/enterprise-apps-capabilities.md b/data/reusables/enterprise-accounts/enterprise-apps-capabilities.md index 094ea1a36084..92167705bd5f 100644 --- a/data/reusables/enterprise-accounts/enterprise-apps-capabilities.md +++ b/data/reusables/enterprise-accounts/enterprise-apps-capabilities.md @@ -4,6 +4,9 @@ Enterprise-installed {% data variables.product.prodname_github_apps %} cannot ca * [Manage users in your enterprise](/graphql/reference/enterprise-admin#object-enterprise) * Create and manage {% data variables.product.prodname_github_app %} installations in your organizations * Manage enterprise custom repository properties +{%- ifversion enterprise-billing-github-app %} +* Manage enterprise billing, including budgets, cost centers, and usage reports. For more information, see [AUTOTITLE](/rest/billing). +{%- endif %} * Call the enterprise SCIM APIs Check the [changelog](https://github.blog/changelog/) for updates on new APIs and permissions for {% data variables.product.prodname_github_apps %}. diff --git a/data/tables/copilot/auto-model-selection.yml b/data/tables/copilot/auto-model-selection.yml index 395d90358523..21ddb9b2488d 100644 --- a/data/tables/copilot/auto-model-selection.yml +++ b/data/tables/copilot/auto-model-selection.yml @@ -28,7 +28,7 @@ - name: GPT-5.3-Codex cloud_agent: true chat: true - cli: true + cli: false app: true - name: GPT-5.4 @@ -74,6 +74,12 @@ cli: true app: true +- name: Claude Opus 4.8 + cloud_agent: false + chat: true + cli: true + app: false + - name: Claude Opus 5 cloud_agent: false chat: true @@ -92,6 +98,19 @@ cli: true app: false +# Google +- name: Gemini 3.6 Flash + cloud_agent: false + chat: true + cli: true + app: false + +- name: Gemini 3.7 Flash + cloud_agent: false + chat: true + cli: true + app: false + # Microsoft - name: MAI-Code-1.1-Flash cloud_agent: true diff --git a/src/graphql/data/fpt/category-map.json b/src/graphql/data/fpt/category-map.json index 179e7de6f2d6..5ce682b165ac 100644 --- a/src/graphql/data/fpt/category-map.json +++ b/src/graphql/data/fpt/category-map.json @@ -128,6 +128,7 @@ "startrepositorymigration": "migrations", "addassigneestoassignable": "issues", "addblockedby": "issues", + "addcloseissuereferences": "issues", "addcomment": "issues", "addlabelstolabelable": "issues", "addsubissue": "issues", @@ -154,6 +155,7 @@ "rejectpendingissuesuggestions": "issues", "removeassigneesfromassignable": "issues", "removeblockedby": "issues", + "removecloseissuereferences": "issues", "removelabelsfromlabelable": "issues", "removesubissue": "issues", "reopenissue": "issues", @@ -1572,6 +1574,7 @@ "startrepositorymigrationinput": "migrations", "addassigneestoassignableinput": "issues", "addblockedbyinput": "issues", + "addcloseissuereferencesinput": "issues", "addcommentinput": "issues", "addlabelstolabelableinput": "issues", "addsubissueinput": "issues", @@ -1615,6 +1618,7 @@ "rejectpendingissuesuggestionsinput": "issues", "removeassigneesfromassignableinput": "issues", "removeblockedbyinput": "issues", + "removecloseissuereferencesinput": "issues", "removelabelsfromlabelableinput": "issues", "removesubissueinput": "issues", "reopenissueinput": "issues", diff --git a/src/graphql/data/fpt/changelog.json b/src/graphql/data/fpt/changelog.json index 80d69e3e0355..66bc8c7d59fc 100644 --- a/src/graphql/data/fpt/changelog.json +++ b/src/graphql/data/fpt/changelog.json @@ -1,4 +1,35 @@ [ + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "
Type AddCloseIssueReferencesInput was added
Input field clientMutationId of type String was added to input object type AddCloseIssueReferencesInput
Input field issueId of type ID! was added to input object type AddCloseIssueReferencesInput
Input field pullRequestIds of type '[ID!]!was added to input object typeAddCloseIssueReferencesInput'
Type AddCloseIssueReferencesPayload was added
Field clientMutationId was added to object type AddCloseIssueReferencesPayload
Field issue was added to object type AddCloseIssueReferencesPayload
Type RemoveCloseIssueReferencesInput was added
Input field clientMutationId of type String was added to input object type RemoveCloseIssueReferencesInput
Input field issueId of type ID! was added to input object type RemoveCloseIssueReferencesInput
Input field pullRequestIds of type '[ID!]!was added to input object typeRemoveCloseIssueReferencesInput'
Type RemoveCloseIssueReferencesPayload was added
Field clientMutationId was added to object type RemoveCloseIssueReferencesPayload
Field issue was added to object type RemoveCloseIssueReferencesPayload
Argument 'userLogins: [String!]added to fieldEnterprise.enterpriseTeams'
Field addCloseIssueReferences was added to object type Mutation
Argument input: AddCloseIssueReferencesInput! added to field Mutation.addCloseIssueReferences
Field removeCloseIssueReferences was added to object type Mutation
Argument input: RemoveCloseIssueReferencesInput! added to field Mutation.removeCloseIssueReferences
User logins to filter by. A maximum of 3 logins can be passed.
", + "type": { + "name": "[String!]", + "id": "string", + "href": "/graphql/reference/other#scalar-string" + } } ] }, diff --git a/src/graphql/data/fpt/schema-issues.json b/src/graphql/data/fpt/schema-issues.json index 04500b4b6219..1fe82dab7119 100644 --- a/src/graphql/data/fpt/schema-issues.json +++ b/src/graphql/data/fpt/schema-issues.json @@ -71,6 +71,38 @@ ], "category": "issues" }, + { + "name": "addCloseIssueReferences", + "id": "addcloseissuereferences", + "href": "/graphql/reference/issues#mutation-addcloseissuereferences", + "description": "Adds one or more pull requests as manually linked closing references on an\nissue. The target must be an issue, not a pull request.
", + "isDeprecated": false, + "inputFields": [ + { + "name": "input", + "type": "AddCloseIssueReferencesInput!", + "id": "addcloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-addcloseissuereferencesinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string", + "description": "A unique identifier for the client performing the mutation.
" + }, + { + "name": "issue", + "type": "Issue", + "id": "issue", + "href": "/graphql/reference/issues#object-issue", + "description": "The issue the closing references were added to.
" + } + ], + "category": "issues" + }, { "name": "addComment", "id": "addcomment", @@ -945,6 +977,38 @@ ], "category": "issues" }, + { + "name": "removeCloseIssueReferences", + "id": "removecloseissuereferences", + "href": "/graphql/reference/issues#mutation-removecloseissuereferences", + "description": "Removes one or more manually linked pull requests from an issue. Auto-detected\nclosing references from pull request body keywords are not removed; edit the\npull request body instead.
", + "isDeprecated": false, + "inputFields": [ + { + "name": "input", + "type": "RemoveCloseIssueReferencesInput!", + "id": "removecloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-removecloseissuereferencesinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string", + "description": "A unique identifier for the client performing the mutation.
" + }, + { + "name": "issue", + "type": "Issue", + "id": "issue", + "href": "/graphql/reference/issues#object-issue", + "description": "The issue the closing references were removed from.
" + } + ], + "category": "issues" + }, { "name": "removeLabelsFromLabelable", "id": "removelabelsfromlabelable", @@ -11242,6 +11306,38 @@ ], "category": "issues" }, + { + "name": "AddCloseIssueReferencesInput", + "id": "addcloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-addcloseissuereferencesinput", + "description": "Autogenerated input type of AddCloseIssueReferences.
", + "inputFields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.
", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string" + }, + { + "name": "issueId", + "description": "ID of the issue to add closing references to.
", + "type": "ID!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + }, + { + "name": "pullRequestIds", + "description": "IDs of the pull requests to link as closing references. Limit: 10.
", + "type": "[ID!]!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + } + ], + "category": "issues" + }, { "name": "AddCommentInput", "id": "addcommentinput", @@ -12904,6 +13000,38 @@ ], "category": "issues" }, + { + "name": "RemoveCloseIssueReferencesInput", + "id": "removecloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-removecloseissuereferencesinput", + "description": "Autogenerated input type of RemoveCloseIssueReferences.
", + "inputFields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.
", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string" + }, + { + "name": "issueId", + "description": "ID of the issue to remove closing references from.
", + "type": "ID!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + }, + { + "name": "pullRequestIds", + "description": "IDs of manually linked pull requests to remove. Auto-detected closing references are left unchanged. Limit: 10.
", + "type": "[ID!]!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + } + ], + "category": "issues" + }, { "name": "RemoveLabelsFromLabelableInput", "id": "removelabelsfromlabelableinput", diff --git a/src/graphql/data/fpt/schema.docs.graphql b/src/graphql/data/fpt/schema.docs.graphql index 9dede9a4ec6d..ba25a856c69b 100644 --- a/src/graphql/data/fpt/schema.docs.graphql +++ b/src/graphql/data/fpt/schema.docs.graphql @@ -451,6 +451,41 @@ type AddBlockedByPayload { issue: Issue } +""" +Autogenerated input type of AddCloseIssueReferences +""" +input AddCloseIssueReferencesInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the issue to add closing references to. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + IDs of the pull requests to link as closing references. Limit: 10. + """ + pullRequestIds: [ID!]! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of AddCloseIssueReferences. +""" +type AddCloseIssueReferencesPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue the closing references were added to. + """ + issue: Issue +} + """ Autogenerated input type of AddComment """ @@ -14208,6 +14243,11 @@ type Enterprise implements Node @docsCategory(name: "enterprise-admin") { The search string to look for. """ query: String + + """ + User logins to filter by. A maximum of 3 logins can be passed. + """ + userLogins: [String!] ): EnterpriseTeamConnection! """ @@ -27221,6 +27261,17 @@ type Mutation @docsCategory(name: "meta") { input: AddBlockedByInput! ): AddBlockedByPayload @docsCategory(name: "issues") + """ + Adds one or more pull requests as manually linked closing references on an + issue. The target must be an issue, not a pull request. + """ + addCloseIssueReferences( + """ + Parameters for AddCloseIssueReferences + """ + input: AddCloseIssueReferencesInput! + ): AddCloseIssueReferencesPayload @docsCategory(name: "issues") + """ Adds a comment to an Issue or Pull Request. """ @@ -28752,6 +28803,18 @@ type Mutation @docsCategory(name: "meta") { input: RemoveBlockedByInput! ): RemoveBlockedByPayload @docsCategory(name: "issues") + """ + Removes one or more manually linked pull requests from an issue. Auto-detected + closing references from pull request body keywords are not removed; edit the + pull request body instead. + """ + removeCloseIssueReferences( + """ + Parameters for RemoveCloseIssueReferences + """ + input: RemoveCloseIssueReferencesInput! + ): RemoveCloseIssueReferencesPayload @docsCategory(name: "issues") + """ Removes an administrator from the enterprise. """ @@ -49920,6 +49983,41 @@ type RemoveBlockedByPayload { issue: Issue } +""" +Autogenerated input type of RemoveCloseIssueReferences +""" +input RemoveCloseIssueReferencesInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the issue to remove closing references from. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + IDs of manually linked pull requests to remove. Auto-detected closing references are left unchanged. Limit: 10. + """ + pullRequestIds: [ID!]! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of RemoveCloseIssueReferences. +""" +type RemoveCloseIssueReferencesPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue the closing references were removed from. + """ + issue: Issue +} + """ Autogenerated input type of RemoveEnterpriseAdmin """ diff --git a/src/graphql/data/ghec/category-map.json b/src/graphql/data/ghec/category-map.json index 179e7de6f2d6..5ce682b165ac 100644 --- a/src/graphql/data/ghec/category-map.json +++ b/src/graphql/data/ghec/category-map.json @@ -128,6 +128,7 @@ "startrepositorymigration": "migrations", "addassigneestoassignable": "issues", "addblockedby": "issues", + "addcloseissuereferences": "issues", "addcomment": "issues", "addlabelstolabelable": "issues", "addsubissue": "issues", @@ -154,6 +155,7 @@ "rejectpendingissuesuggestions": "issues", "removeassigneesfromassignable": "issues", "removeblockedby": "issues", + "removecloseissuereferences": "issues", "removelabelsfromlabelable": "issues", "removesubissue": "issues", "reopenissue": "issues", @@ -1572,6 +1574,7 @@ "startrepositorymigrationinput": "migrations", "addassigneestoassignableinput": "issues", "addblockedbyinput": "issues", + "addcloseissuereferencesinput": "issues", "addcommentinput": "issues", "addlabelstolabelableinput": "issues", "addsubissueinput": "issues", @@ -1615,6 +1618,7 @@ "rejectpendingissuesuggestionsinput": "issues", "removeassigneesfromassignableinput": "issues", "removeblockedbyinput": "issues", + "removecloseissuereferencesinput": "issues", "removelabelsfromlabelableinput": "issues", "removesubissueinput": "issues", "reopenissueinput": "issues", diff --git a/src/graphql/data/ghec/schema-enterprise-admin.json b/src/graphql/data/ghec/schema-enterprise-admin.json index 94793fd5ef18..de00a0030132 100644 --- a/src/graphql/data/ghec/schema-enterprise-admin.json +++ b/src/graphql/data/ghec/schema-enterprise-admin.json @@ -1957,6 +1957,15 @@ "id": "string", "href": "/graphql/reference/other#scalar-string" } + }, + { + "name": "userLogins", + "description": "User logins to filter by. A maximum of 3 logins can be passed.
", + "type": { + "name": "[String!]", + "id": "string", + "href": "/graphql/reference/other#scalar-string" + } } ] }, diff --git a/src/graphql/data/ghec/schema-issues.json b/src/graphql/data/ghec/schema-issues.json index 04500b4b6219..1fe82dab7119 100644 --- a/src/graphql/data/ghec/schema-issues.json +++ b/src/graphql/data/ghec/schema-issues.json @@ -71,6 +71,38 @@ ], "category": "issues" }, + { + "name": "addCloseIssueReferences", + "id": "addcloseissuereferences", + "href": "/graphql/reference/issues#mutation-addcloseissuereferences", + "description": "Adds one or more pull requests as manually linked closing references on an\nissue. The target must be an issue, not a pull request.
", + "isDeprecated": false, + "inputFields": [ + { + "name": "input", + "type": "AddCloseIssueReferencesInput!", + "id": "addcloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-addcloseissuereferencesinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string", + "description": "A unique identifier for the client performing the mutation.
" + }, + { + "name": "issue", + "type": "Issue", + "id": "issue", + "href": "/graphql/reference/issues#object-issue", + "description": "The issue the closing references were added to.
" + } + ], + "category": "issues" + }, { "name": "addComment", "id": "addcomment", @@ -945,6 +977,38 @@ ], "category": "issues" }, + { + "name": "removeCloseIssueReferences", + "id": "removecloseissuereferences", + "href": "/graphql/reference/issues#mutation-removecloseissuereferences", + "description": "Removes one or more manually linked pull requests from an issue. Auto-detected\nclosing references from pull request body keywords are not removed; edit the\npull request body instead.
", + "isDeprecated": false, + "inputFields": [ + { + "name": "input", + "type": "RemoveCloseIssueReferencesInput!", + "id": "removecloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-removecloseissuereferencesinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string", + "description": "A unique identifier for the client performing the mutation.
" + }, + { + "name": "issue", + "type": "Issue", + "id": "issue", + "href": "/graphql/reference/issues#object-issue", + "description": "The issue the closing references were removed from.
" + } + ], + "category": "issues" + }, { "name": "removeLabelsFromLabelable", "id": "removelabelsfromlabelable", @@ -11242,6 +11306,38 @@ ], "category": "issues" }, + { + "name": "AddCloseIssueReferencesInput", + "id": "addcloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-addcloseissuereferencesinput", + "description": "Autogenerated input type of AddCloseIssueReferences.
", + "inputFields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.
", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string" + }, + { + "name": "issueId", + "description": "ID of the issue to add closing references to.
", + "type": "ID!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + }, + { + "name": "pullRequestIds", + "description": "IDs of the pull requests to link as closing references. Limit: 10.
", + "type": "[ID!]!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + } + ], + "category": "issues" + }, { "name": "AddCommentInput", "id": "addcommentinput", @@ -12904,6 +13000,38 @@ ], "category": "issues" }, + { + "name": "RemoveCloseIssueReferencesInput", + "id": "removecloseissuereferencesinput", + "href": "/graphql/reference/issues#input-object-removecloseissuereferencesinput", + "description": "Autogenerated input type of RemoveCloseIssueReferences.
", + "inputFields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.
", + "type": "String", + "id": "string", + "href": "/graphql/reference/other#scalar-string" + }, + { + "name": "issueId", + "description": "ID of the issue to remove closing references from.
", + "type": "ID!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + }, + { + "name": "pullRequestIds", + "description": "IDs of manually linked pull requests to remove. Auto-detected closing references are left unchanged. Limit: 10.
", + "type": "[ID!]!", + "id": "id", + "href": "/graphql/reference/other#scalar-id", + "isDeprecated": false + } + ], + "category": "issues" + }, { "name": "RemoveLabelsFromLabelableInput", "id": "removelabelsfromlabelableinput", diff --git a/src/graphql/data/ghec/schema.docs.graphql b/src/graphql/data/ghec/schema.docs.graphql index 9dede9a4ec6d..ba25a856c69b 100644 --- a/src/graphql/data/ghec/schema.docs.graphql +++ b/src/graphql/data/ghec/schema.docs.graphql @@ -451,6 +451,41 @@ type AddBlockedByPayload { issue: Issue } +""" +Autogenerated input type of AddCloseIssueReferences +""" +input AddCloseIssueReferencesInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the issue to add closing references to. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + IDs of the pull requests to link as closing references. Limit: 10. + """ + pullRequestIds: [ID!]! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of AddCloseIssueReferences. +""" +type AddCloseIssueReferencesPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue the closing references were added to. + """ + issue: Issue +} + """ Autogenerated input type of AddComment """ @@ -14208,6 +14243,11 @@ type Enterprise implements Node @docsCategory(name: "enterprise-admin") { The search string to look for. """ query: String + + """ + User logins to filter by. A maximum of 3 logins can be passed. + """ + userLogins: [String!] ): EnterpriseTeamConnection! """ @@ -27221,6 +27261,17 @@ type Mutation @docsCategory(name: "meta") { input: AddBlockedByInput! ): AddBlockedByPayload @docsCategory(name: "issues") + """ + Adds one or more pull requests as manually linked closing references on an + issue. The target must be an issue, not a pull request. + """ + addCloseIssueReferences( + """ + Parameters for AddCloseIssueReferences + """ + input: AddCloseIssueReferencesInput! + ): AddCloseIssueReferencesPayload @docsCategory(name: "issues") + """ Adds a comment to an Issue or Pull Request. """ @@ -28752,6 +28803,18 @@ type Mutation @docsCategory(name: "meta") { input: RemoveBlockedByInput! ): RemoveBlockedByPayload @docsCategory(name: "issues") + """ + Removes one or more manually linked pull requests from an issue. Auto-detected + closing references from pull request body keywords are not removed; edit the + pull request body instead. + """ + removeCloseIssueReferences( + """ + Parameters for RemoveCloseIssueReferences + """ + input: RemoveCloseIssueReferencesInput! + ): RemoveCloseIssueReferencesPayload @docsCategory(name: "issues") + """ Removes an administrator from the enterprise. """ @@ -49920,6 +49983,41 @@ type RemoveBlockedByPayload { issue: Issue } +""" +Autogenerated input type of RemoveCloseIssueReferences +""" +input RemoveCloseIssueReferencesInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the issue to remove closing references from. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + IDs of manually linked pull requests to remove. Auto-detected closing references are left unchanged. Limit: 10. + """ + pullRequestIds: [ID!]! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of RemoveCloseIssueReferences. +""" +type RemoveCloseIssueReferencesPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue the closing references were removed from. + """ + issue: Issue +} + """ Autogenerated input type of RemoveEnterpriseAdmin """