From 3e136b615bb1932fbeecc3d5d1344029aaba9d91 Mon Sep 17 00:00:00 2001 From: Jess Hosman <1183847+jhosman@users.noreply.github.com> Date: Mon, 11 Dec 2023 17:38:39 -0700 Subject: [PATCH 1/7] Restructure REST docs (#44602) Co-authored-by: Rachael Sewell Co-authored-by: Sarah Edwards --- ...ndpoints-for-the-github-marketplace-api.md | 2 +- ...he-openapi-description-for-the-rest-api.md | 1 + .../api-versions.md | 2 ++ .../breaking-changes.md | 2 ++ ...paring-githubs-rest-api-and-graphql-api.md | 1 + content/rest/about-the-rest-api/index.md | 19 +++++++++++ .../authenticating-to-the-rest-api.md | 1 + ...for-fine-grained-personal-access-tokens.md | 4 ++- ...r-github-app-installation-access-tokens.md | 1 + ...lable-for-github-app-user-access-tokens.md | 4 ++- .../{overview => authentication}/index.md | 20 ++---------- .../keeping-your-api-credentials-secure.md | 4 ++- ...for-fine-grained-personal-access-tokens.md | 4 ++- .../permissions-required-for-github-apps.md | 1 + content/rest/guides/index.md | 3 -- content/rest/index.md | 32 ++++++++++--------- .../best-practices-for-using-the-rest-api.md | 1 + .../getting-started-with-the-rest-api.md | 4 ++- .../github-event-types.md | 1 + content/rest/using-the-rest-api/index.md | 22 +++++++++++++ .../issue-event-types.md | 1 + .../libraries-for-the-rest-api.md | 1 + .../media-types.md | 1 + .../rate-limits-for-the-rest-api.md | 2 ++ .../resources-in-the-rest-api.md | 1 + .../troubleshooting-the-rest-api.md | 1 + .../using-pagination-in-the-rest-api.md | 1 + ...aring-githubs-rest-api-and-graphql-api.md} | 0 .../{overview => about-the-rest-api}/index.md | 2 +- src/fixtures/fixtures/content/rest/index.md | 6 ++-- src/fixtures/fixtures/rest-redirects.json | 8 ++--- src/fixtures/tests/playwright-a11y.spec.ts | 2 +- src/github-apps/lib/config.json | 12 +++---- .../[...restPage].tsx | 0 .../index.tsx | 0 .../rest/authentication/[...restPage].tsx | 1 + ...or-fine-grained-personal-access-tokens.tsx | 0 ...-github-app-installation-access-tokens.tsx | 0 ...able-for-github-app-user-access-tokens.tsx | 0 .../[versionId]/rest/authentication/index.tsx | 1 + ...or-fine-grained-personal-access-tokens.tsx | 0 .../permissions-required-for-github-apps.tsx | 0 .../rest/using-the-rest-api/[...restPage].tsx | 1 + .../rest/using-the-rest-api/index.tsx | 1 + .../lib/static/redirect-exceptions.txt | 2 +- src/rest/lib/config.js | 10 ++++-- src/rest/lib/config.json | 6 ++-- ...paring-githubs-rest-api-and-graphql-api.md | 13 ++++++++ .../content/rest/about-the-rest-api/index.md | 12 +++++++ 49 files changed, 153 insertions(+), 61 deletions(-) rename content/rest/{overview => about-the-rest-api}/about-the-openapi-description-for-the-rest-api.md (97%) rename content/rest/{overview => about-the-rest-api}/api-versions.md (98%) rename content/rest/{overview => about-the-rest-api}/breaking-changes.md (96%) rename content/rest/{overview => about-the-rest-api}/comparing-githubs-rest-api-and-graphql-api.md (98%) create mode 100644 content/rest/about-the-rest-api/index.md rename content/rest/{overview => authentication}/authenticating-to-the-rest-api.md (99%) rename content/rest/{overview => authentication}/endpoints-available-for-fine-grained-personal-access-tokens.md (68%) rename content/rest/{overview => authentication}/endpoints-available-for-github-app-installation-access-tokens.md (91%) rename content/rest/{overview => authentication}/endpoints-available-for-github-app-user-access-tokens.md (76%) rename content/rest/{overview => authentication}/index.md (50%) rename content/rest/{overview => authentication}/keeping-your-api-credentials-secure.md (97%) rename content/rest/{overview => authentication}/permissions-required-for-fine-grained-personal-access-tokens.md (89%) rename content/rest/{overview => authentication}/permissions-required-for-github-apps.md (96%) rename content/rest/{guides => using-the-rest-api}/best-practices-for-using-the-rest-api.md (99%) rename content/rest/{guides => using-the-rest-api}/getting-started-with-the-rest-api.md (99%) rename content/rest/{overview => using-the-rest-api}/github-event-types.md (99%) create mode 100644 content/rest/using-the-rest-api/index.md rename content/rest/{overview => using-the-rest-api}/issue-event-types.md (99%) rename content/rest/{overview => using-the-rest-api}/libraries-for-the-rest-api.md (99%) rename content/rest/{overview => using-the-rest-api}/media-types.md (99%) rename content/rest/{overview => using-the-rest-api}/rate-limits-for-the-rest-api.md (99%) rename content/rest/{overview => using-the-rest-api}/resources-in-the-rest-api.md (99%) rename content/rest/{overview => using-the-rest-api}/troubleshooting-the-rest-api.md (99%) rename content/rest/{guides => using-the-rest-api}/using-pagination-in-the-rest-api.md (99%) rename src/fixtures/fixtures/content/rest/{overview/about-githubs-apis.md => about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md} (100%) rename src/fixtures/fixtures/content/rest/{overview => about-the-rest-api}/index.md (84%) rename src/pages/[versionId]/rest/{overview => about-the-rest-api}/[...restPage].tsx (100%) rename src/pages/[versionId]/rest/{overview => about-the-rest-api}/index.tsx (100%) create mode 100644 src/pages/[versionId]/rest/authentication/[...restPage].tsx rename src/pages/[versionId]/rest/{overview => authentication}/endpoints-available-for-fine-grained-personal-access-tokens.tsx (100%) rename src/pages/[versionId]/rest/{overview => authentication}/endpoints-available-for-github-app-installation-access-tokens.tsx (100%) rename src/pages/[versionId]/rest/{overview => authentication}/endpoints-available-for-github-app-user-access-tokens.tsx (100%) create mode 100644 src/pages/[versionId]/rest/authentication/index.tsx rename src/pages/[versionId]/rest/{overview => authentication}/permissions-required-for-fine-grained-personal-access-tokens.tsx (100%) rename src/pages/[versionId]/rest/{overview => authentication}/permissions-required-for-github-apps.tsx (100%) create mode 100644 src/pages/[versionId]/rest/using-the-rest-api/[...restPage].tsx create mode 100644 src/pages/[versionId]/rest/using-the-rest-api/index.tsx create mode 100644 tests/fixtures/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md create mode 100644 tests/fixtures/content/rest/about-the-rest-api/index.md diff --git a/content/apps/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md b/content/apps/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md index ae54e9437d74..a474c2f2b691 100644 --- a/content/apps/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md +++ b/content/apps/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md @@ -32,6 +32,6 @@ See these pages for details on how to authenticate when using the {% data variab {% note %} -**Note:** [Rate limits for the REST API](/rest/overview/rate-limits-for-the-rest-api) apply to all {% data variables.product.prodname_marketplace %} API endpoints. +**Note:** [Rate limits for the REST API](/rest/using-the-rest-api/rate-limits-for-the-rest-api) apply to all {% data variables.product.prodname_marketplace %} API endpoints. {% endnote %} diff --git a/content/rest/overview/about-the-openapi-description-for-the-rest-api.md b/content/rest/about-the-rest-api/about-the-openapi-description-for-the-rest-api.md similarity index 97% rename from content/rest/overview/about-the-openapi-description-for-the-rest-api.md rename to content/rest/about-the-rest-api/about-the-openapi-description-for-the-rest-api.md index 7afa6d06f3ec..a3d04d7015b3 100644 --- a/content/rest/overview/about-the-openapi-description-for-the-rest-api.md +++ b/content/rest/about-the-rest-api/about-the-openapi-description-for-the-rest-api.md @@ -10,6 +10,7 @@ topics: - API redirect_from: - /rest/overview/openapi-description + - /rest/overview/about-the-openapi-description-for-the-rest-api --- ## About OpenAPI diff --git a/content/rest/overview/api-versions.md b/content/rest/about-the-rest-api/api-versions.md similarity index 98% rename from content/rest/overview/api-versions.md rename to content/rest/about-the-rest-api/api-versions.md index 9cb4ea02f20c..e767e7fd7262 100644 --- a/content/rest/overview/api-versions.md +++ b/content/rest/about-the-rest-api/api-versions.md @@ -4,6 +4,8 @@ shortTitle: API Versions intro: Learn how to specify which REST API version to use whenever you make a request to the REST API. versions: feature: api-date-versioning +redirect_from: + - /rest/overview/api-versions --- ## About API versioning diff --git a/content/rest/overview/breaking-changes.md b/content/rest/about-the-rest-api/breaking-changes.md similarity index 96% rename from content/rest/overview/breaking-changes.md rename to content/rest/about-the-rest-api/breaking-changes.md index 684729e4642e..619c3b9a2249 100644 --- a/content/rest/overview/breaking-changes.md +++ b/content/rest/about-the-rest-api/breaking-changes.md @@ -4,6 +4,8 @@ shortTitle: Breaking changes intro: Learn about breaking changes that were introduced in each REST API version. versions: feature: api-date-versioning +redirect_from: + - /rest/overview/breaking-changes --- ## About breaking changes in the REST API diff --git a/content/rest/overview/comparing-githubs-rest-api-and-graphql-api.md b/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md similarity index 98% rename from content/rest/overview/comparing-githubs-rest-api-and-graphql-api.md rename to content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md index 4b66784181a1..5a676627702a 100644 --- a/content/rest/overview/comparing-githubs-rest-api-and-graphql-api.md +++ b/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md @@ -8,6 +8,7 @@ redirect_from: - /github/extending-github/getting-started-with-the-api - /developers/overview/about-githubs-apis - /rest/overview/about-githubs-apis + - /rest/overview/comparing-githubs-rest-api-and-graphql-api versions: fpt: '*' ghes: '*' diff --git a/content/rest/about-the-rest-api/index.md b/content/rest/about-the-rest-api/index.md new file mode 100644 index 000000000000..4ecfeadf3479 --- /dev/null +++ b/content/rest/about-the-rest-api/index.md @@ -0,0 +1,19 @@ +--- +title: About the REST API +intro: 'Learn more about the {% data variables.product.prodname_dotcom %} REST API and what you can do with it.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - API +children: + - /comparing-githubs-rest-api-and-graphql-api + - /api-versions + - /breaking-changes + - /about-the-openapi-description-for-the-rest-api +autogenerated: rest +--- + + diff --git a/content/rest/overview/authenticating-to-the-rest-api.md b/content/rest/authentication/authenticating-to-the-rest-api.md similarity index 99% rename from content/rest/overview/authenticating-to-the-rest-api.md rename to content/rest/authentication/authenticating-to-the-rest-api.md index 4636a96d4855..1d34f2af4475 100644 --- a/content/rest/overview/authenticating-to-the-rest-api.md +++ b/content/rest/authentication/authenticating-to-the-rest-api.md @@ -4,6 +4,7 @@ intro: You can authenticate to the REST API to access more endpoints and have a redirect_from: - /v3/auth - /rest/overview/other-authentication-methods + - /rest/overview/authenticating-to-the-rest-api versions: fpt: '*' ghes: '*' diff --git a/content/rest/overview/endpoints-available-for-fine-grained-personal-access-tokens.md b/content/rest/authentication/endpoints-available-for-fine-grained-personal-access-tokens.md similarity index 68% rename from content/rest/overview/endpoints-available-for-fine-grained-personal-access-tokens.md rename to content/rest/authentication/endpoints-available-for-fine-grained-personal-access-tokens.md index daa5c382a8af..c3cdc9b21e3f 100644 --- a/content/rest/overview/endpoints-available-for-fine-grained-personal-access-tokens.md +++ b/content/rest/authentication/endpoints-available-for-fine-grained-personal-access-tokens.md @@ -3,8 +3,10 @@ title: Endpoints available for fine-grained personal access tokens intro: 'Your {% data variables.product.pat_v2 %} can make requests to the following REST endpoints.' versions: feature: pat-v2 -shortTitle: 'Endpoints for fine-grained PATs' +shortTitle: Endpoints for fine-grained PATs autogenerated: github-apps +redirect_from: + - /rest/overview/endpoints-available-for-fine-grained-personal-access-tokens --- diff --git a/content/rest/overview/endpoints-available-for-github-app-installation-access-tokens.md b/content/rest/authentication/endpoints-available-for-github-app-installation-access-tokens.md similarity index 91% rename from content/rest/overview/endpoints-available-for-github-app-installation-access-tokens.md rename to content/rest/authentication/endpoints-available-for-github-app-installation-access-tokens.md index a9409a9b2291..9397d5b3958d 100644 --- a/content/rest/overview/endpoints-available-for-github-app-installation-access-tokens.md +++ b/content/rest/authentication/endpoints-available-for-github-app-installation-access-tokens.md @@ -7,6 +7,7 @@ redirect_from: - /v3/apps/available-endpoints - /rest/reference/endpoints-available-for-github-apps - /rest/overview/endpoints-available-for-github-apps + - /rest/overview/endpoints-available-for-github-app-installation-access-tokens versions: fpt: '*' ghes: '*' diff --git a/content/rest/overview/endpoints-available-for-github-app-user-access-tokens.md b/content/rest/authentication/endpoints-available-for-github-app-user-access-tokens.md similarity index 76% rename from content/rest/overview/endpoints-available-for-github-app-user-access-tokens.md rename to content/rest/authentication/endpoints-available-for-github-app-user-access-tokens.md index b6672fda18ee..b2970dd1f632 100644 --- a/content/rest/overview/endpoints-available-for-github-app-user-access-tokens.md +++ b/content/rest/authentication/endpoints-available-for-github-app-user-access-tokens.md @@ -1,7 +1,7 @@ --- title: Endpoints available for GitHub App user access tokens shortTitle: Endpoints for GitHub App user tokens -intro: 'Your GitHub App can make requests to the following REST endpoints with a user access token.' +intro: Your GitHub App can make requests to the following REST endpoints with a user access token. permissions: 'You can use a user access token to access these endpoints using your {% data variables.product.prodname_github_app %}. For more information, see "[AUTOTITLE](/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user)."' versions: fpt: '*' @@ -12,6 +12,8 @@ topics: - API - GitHub Apps autogenerated: github-apps +redirect_from: + - /rest/overview/endpoints-available-for-github-app-user-access-tokens --- diff --git a/content/rest/overview/index.md b/content/rest/authentication/index.md similarity index 50% rename from content/rest/overview/index.md rename to content/rest/authentication/index.md index 1fa5e8699b09..ef89d85e04ce 100644 --- a/content/rest/overview/index.md +++ b/content/rest/authentication/index.md @@ -1,7 +1,7 @@ --- -title: REST API overview -shortTitle: Overview -intro: 'Learn about resources, libraries, previews and troubleshooting for {% data variables.product.prodname_dotcom %}''s REST API.' +title: Authenticating to the REST API +shortTitle: Authentication +intro: 'Learn how to authenticate your REST API requests.' versions: fpt: '*' ghes: '*' @@ -10,25 +10,11 @@ versions: topics: - API children: - - /comparing-githubs-rest-api-and-graphql-api - - /resources-in-the-rest-api - - /rate-limits-for-the-rest-api - - /api-versions - - /media-types - /authenticating-to-the-rest-api - /keeping-your-api-credentials-secure - - /troubleshooting-the-rest-api - - /libraries-for-the-rest-api - - /about-the-openapi-description-for-the-rest-api - - /issue-event-types - - /github-event-types - /endpoints-available-for-github-app-installation-access-tokens - /endpoints-available-for-github-app-user-access-tokens - /endpoints-available-for-fine-grained-personal-access-tokens - /permissions-required-for-github-apps - /permissions-required-for-fine-grained-personal-access-tokens - - /breaking-changes -redirect_from: - - /developers/overview --- - diff --git a/content/rest/overview/keeping-your-api-credentials-secure.md b/content/rest/authentication/keeping-your-api-credentials-secure.md similarity index 97% rename from content/rest/overview/keeping-your-api-credentials-secure.md rename to content/rest/authentication/keeping-your-api-credentials-secure.md index 95f6b39c6dc3..d0d3b0188c43 100644 --- a/content/rest/overview/keeping-your-api-credentials-secure.md +++ b/content/rest/authentication/keeping-your-api-credentials-secure.md @@ -1,7 +1,7 @@ --- title: Keeping your API credentials secure shortTitle: Keeping API credentials secure -intro: 'Follow these best practices to keep your API credentials and tokens secure.' +intro: Follow these best practices to keep your API credentials and tokens secure. versions: fpt: '*' ghes: '*' @@ -9,6 +9,8 @@ versions: ghec: '*' topics: - API +redirect_from: + - /rest/overview/keeping-your-api-credentials-secure --- ## Choose an appropriate authentication method diff --git a/content/rest/overview/permissions-required-for-fine-grained-personal-access-tokens.md b/content/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens.md similarity index 89% rename from content/rest/overview/permissions-required-for-fine-grained-personal-access-tokens.md rename to content/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens.md index 4d65c545beb2..1a701245ce03 100644 --- a/content/rest/overview/permissions-required-for-fine-grained-personal-access-tokens.md +++ b/content/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens.md @@ -3,8 +3,10 @@ title: Permissions required for fine-grained personal access tokens intro: 'These are the permissions required for a {% data variables.product.pat_v2 %} to use each REST API endpoint that works with {% data variables.product.pat_v2 %}s.' versions: feature: pat-v2 -shortTitle: 'Permissions for fine-grained PATs' +shortTitle: Permissions for fine-grained PATs autogenerated: github-apps +redirect_from: + - /rest/overview/permissions-required-for-fine-grained-personal-access-tokens --- ## About permissions required for {% data variables.product.pat_v2 %} diff --git a/content/rest/overview/permissions-required-for-github-apps.md b/content/rest/authentication/permissions-required-for-github-apps.md similarity index 96% rename from content/rest/overview/permissions-required-for-github-apps.md rename to content/rest/authentication/permissions-required-for-github-apps.md index 3f1ad9cbc437..4e9d7aa54a9d 100644 --- a/content/rest/overview/permissions-required-for-github-apps.md +++ b/content/rest/authentication/permissions-required-for-github-apps.md @@ -4,6 +4,7 @@ intro: 'These are the permissions required for a {% data variables.product.prodn redirect_from: - /v3/apps/permissions - /rest/reference/permissions-required-for-github-apps + - /rest/overview/permissions-required-for-github-apps versions: fpt: '*' ghes: '*' diff --git a/content/rest/guides/index.md b/content/rest/guides/index.md index c2ec86152c7e..d77919954ed8 100644 --- a/content/rest/guides/index.md +++ b/content/rest/guides/index.md @@ -12,16 +12,13 @@ versions: topics: - API children: - - /getting-started-with-the-rest-api - /scripting-with-the-rest-api-and-javascript - /scripting-with-the-rest-api-and-ruby - /discovering-resources-for-a-user - /delivering-deployments - /rendering-data-as-graphs - /working-with-comments - - /using-pagination-in-the-rest-api - /building-a-ci-server - - /best-practices-for-using-the-rest-api - /using-the-rest-api-to-interact-with-your-git-database - /using-the-rest-api-to-interact-with-checks - /encrypting-secrets-for-the-rest-api diff --git a/content/rest/index.md b/content/rest/index.md index 59946f3169c2..12a94b71f6ec 100644 --- a/content/rest/index.md +++ b/content/rest/index.md @@ -1,35 +1,35 @@ --- title: GitHub REST API documentation shortTitle: REST API -intro: >- - To create integrations, retrieve data, and automate your workflows, build with - the {% data variables.product.prodname_dotcom %} REST API. +intro: 'Create integrations, retrieve data, and automate your workflows with the {% data variables.product.prodname_dotcom %} REST API.' introLinks: quickstart: /rest/quickstart - overview: /rest/guides/getting-started-with-the-rest-api + overview: /rest/using-the-rest-api/getting-started-with-the-rest-api featuredLinks: startHere: - - /rest/guides/getting-started-with-the-rest-api - - /rest/overview/authenticating-to-the-rest-api - - /rest/guides/best-practices-for-using-the-rest-api - - /rest/guides/using-pagination-in-the-rest-api + - /rest/using-the-rest-api/getting-started-with-the-rest-api + - /rest/authentication/authenticating-to-the-rest-api + - /rest/using-the-rest-api/best-practices-for-using-the-rest-api + - /rest/using-the-rest-api/using-pagination-in-the-rest-api popular: - - /rest/overview/rate-limits-for-the-rest-api - - /rest/overview/api-versions - - /rest/overview/authenticating-to-the-rest-api - - /rest/overview/troubleshooting-the-rest-api + - /rest/using-the-rest-api/rate-limits-for-the-rest-api + - /rest/about-the-rest-api/api-versions + - /rest/authentication/authenticating-to-the-rest-api + - /rest/using-the-rest-api/troubleshooting-the-rest-api - /rest/guides/scripting-with-the-rest-api-and-javascript - - /rest/overview/keeping-your-api-credentials-secure + - /rest/authentication/keeping-your-api-credentials-secure guideCards: - /rest/guides/delivering-deployments - /rest/guides/using-the-rest-api-to-interact-with-checks - - /rest/guides/using-pagination-in-the-rest-api + - /rest/using-the-rest-api/using-pagination-in-the-rest-api changelog: label: 'api, apis' layout: product-landing redirect_from: - /v3 - /rest/reference + - /rest/overview + - /developers/overview versions: fpt: '*' ghes: '*' @@ -37,7 +37,9 @@ versions: ghec: '*' children: - /quickstart - - /overview + - /about-the-rest-api + - /using-the-rest-api + - /authentication - /guides - /actions - /activity diff --git a/content/rest/guides/best-practices-for-using-the-rest-api.md b/content/rest/using-the-rest-api/best-practices-for-using-the-rest-api.md similarity index 99% rename from content/rest/guides/best-practices-for-using-the-rest-api.md rename to content/rest/using-the-rest-api/best-practices-for-using-the-rest-api.md index 0cec5eaf8734..e22bd616376c 100644 --- a/content/rest/guides/best-practices-for-using-the-rest-api.md +++ b/content/rest/using-the-rest-api/best-practices-for-using-the-rest-api.md @@ -5,6 +5,7 @@ redirect_from: - /guides/best-practices-for-integrators - /v3/guides/best-practices-for-integrators - /rest/guides/best-practices-for-integrators + - /rest/guides/best-practices-for-using-the-rest-api versions: fpt: '*' ghes: '*' diff --git a/content/rest/guides/getting-started-with-the-rest-api.md b/content/rest/using-the-rest-api/getting-started-with-the-rest-api.md similarity index 99% rename from content/rest/guides/getting-started-with-the-rest-api.md rename to content/rest/using-the-rest-api/getting-started-with-the-rest-api.md index aa7dc9790d36..39843d734456 100644 --- a/content/rest/guides/getting-started-with-the-rest-api.md +++ b/content/rest/using-the-rest-api/getting-started-with-the-rest-api.md @@ -1,6 +1,6 @@ --- title: Getting started with the REST API -shortTitle: Using the API +shortTitle: Getting started intro: 'Learn how to use the {% data variables.product.prodname_dotcom %} REST API.' versions: fpt: '*' @@ -9,6 +9,8 @@ versions: ghec: '*' topics: - API +redirect_from: + - /rest/guides/getting-started-with-the-rest-api --- ## Introduction diff --git a/content/rest/overview/github-event-types.md b/content/rest/using-the-rest-api/github-event-types.md similarity index 99% rename from content/rest/overview/github-event-types.md rename to content/rest/using-the-rest-api/github-event-types.md index 958462a5cae6..ec241435b105 100644 --- a/content/rest/overview/github-event-types.md +++ b/content/rest/using-the-rest-api/github-event-types.md @@ -7,6 +7,7 @@ redirect_from: - /developers/webhooks-and-events/events/github-event-types - /webhooks-and-events/events/github-event-types - /developers/webhooks-and-events/events + - /rest/overview/github-event-types versions: fpt: '*' ghes: '*' diff --git a/content/rest/using-the-rest-api/index.md b/content/rest/using-the-rest-api/index.md new file mode 100644 index 000000000000..3a4755645bec --- /dev/null +++ b/content/rest/using-the-rest-api/index.md @@ -0,0 +1,22 @@ +--- +title: Using the REST API +intro: 'Learn how to use the {% data variables.product.prodname_dotcom %} REST API, follow best practices, and troubleshoot problems.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - API +children: + - /getting-started-with-the-rest-api + - /rate-limits-for-the-rest-api + - /resources-in-the-rest-api + - /using-pagination-in-the-rest-api + - /libraries-for-the-rest-api + - /media-types + - /best-practices-for-using-the-rest-api + - /troubleshooting-the-rest-api + - /issue-event-types + - /github-event-types +--- diff --git a/content/rest/overview/issue-event-types.md b/content/rest/using-the-rest-api/issue-event-types.md similarity index 99% rename from content/rest/overview/issue-event-types.md rename to content/rest/using-the-rest-api/issue-event-types.md index 121c4fed8f1b..b36926590cd2 100644 --- a/content/rest/overview/issue-event-types.md +++ b/content/rest/using-the-rest-api/issue-event-types.md @@ -6,6 +6,7 @@ redirect_from: - /developers/webhooks-and-events/issue-event-types - /developers/webhooks-and-events/events/issue-event-types - /webhooks-and-events/events/issue-event-types + - /rest/overview/issue-event-types versions: fpt: '*' ghes: '*' diff --git a/content/rest/overview/libraries-for-the-rest-api.md b/content/rest/using-the-rest-api/libraries-for-the-rest-api.md similarity index 99% rename from content/rest/overview/libraries-for-the-rest-api.md rename to content/rest/using-the-rest-api/libraries-for-the-rest-api.md index 7fea288445d3..78f7705c9b76 100644 --- a/content/rest/overview/libraries-for-the-rest-api.md +++ b/content/rest/using-the-rest-api/libraries-for-the-rest-api.md @@ -6,6 +6,7 @@ redirect_from: - /libraries - /v3/libraries - /rest/overview/libraries + - /rest/overview/libraries-for-the-rest-api versions: fpt: '*' ghes: '*' diff --git a/content/rest/overview/media-types.md b/content/rest/using-the-rest-api/media-types.md similarity index 99% rename from content/rest/overview/media-types.md rename to content/rest/using-the-rest-api/media-types.md index a577a59d72a2..1e978757e3bd 100644 --- a/content/rest/overview/media-types.md +++ b/content/rest/using-the-rest-api/media-types.md @@ -3,6 +3,7 @@ title: Media types intro: Learn about media types for specifying the format of the data you want to consume. redirect_from: - /v3/media + - /rest/overview/media-types versions: fpt: '*' ghes: '*' diff --git a/content/rest/overview/rate-limits-for-the-rest-api.md b/content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md similarity index 99% rename from content/rest/overview/rate-limits-for-the-rest-api.md rename to content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md index 42b314e33fd1..6fcaab4c98f7 100644 --- a/content/rest/overview/rate-limits-for-the-rest-api.md +++ b/content/rest/using-the-rest-api/rate-limits-for-the-rest-api.md @@ -9,6 +9,8 @@ versions: ghec: '*' topics: - API +redirect_from: + - /rest/overview/rate-limits-for-the-rest-api --- {% ifversion ghes %} diff --git a/content/rest/overview/resources-in-the-rest-api.md b/content/rest/using-the-rest-api/resources-in-the-rest-api.md similarity index 99% rename from content/rest/overview/resources-in-the-rest-api.md rename to content/rest/using-the-rest-api/resources-in-the-rest-api.md index e6b887f102fa..8904961ba10a 100644 --- a/content/rest/overview/resources-in-the-rest-api.md +++ b/content/rest/using-the-rest-api/resources-in-the-rest-api.md @@ -3,6 +3,7 @@ title: Resources in the REST API intro: 'Learn how to navigate the resources provided by the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API.' redirect_from: - /rest/initialize-the-repo + - /rest/overview/resources-in-the-rest-api versions: fpt: '*' ghes: '*' diff --git a/content/rest/overview/troubleshooting-the-rest-api.md b/content/rest/using-the-rest-api/troubleshooting-the-rest-api.md similarity index 99% rename from content/rest/overview/troubleshooting-the-rest-api.md rename to content/rest/using-the-rest-api/troubleshooting-the-rest-api.md index 3a855334c804..75345d452a5f 100644 --- a/content/rest/overview/troubleshooting-the-rest-api.md +++ b/content/rest/using-the-rest-api/troubleshooting-the-rest-api.md @@ -5,6 +5,7 @@ intro: Learn how to diagnose and resolve common problems for the REST API. redirect_from: - /v3/troubleshooting - /rest/overview/troubleshooting + - /rest/overview/troubleshooting-the-rest-api versions: fpt: '*' ghes: '*' diff --git a/content/rest/guides/using-pagination-in-the-rest-api.md b/content/rest/using-the-rest-api/using-pagination-in-the-rest-api.md similarity index 99% rename from content/rest/guides/using-pagination-in-the-rest-api.md rename to content/rest/using-the-rest-api/using-pagination-in-the-rest-api.md index 832d07bf1582..c1487dd2692e 100644 --- a/content/rest/guides/using-pagination-in-the-rest-api.md +++ b/content/rest/using-the-rest-api/using-pagination-in-the-rest-api.md @@ -5,6 +5,7 @@ redirect_from: - /guides/traversing-with-pagination - /v3/guides/traversing-with-pagination - /rest/guides/traversing-with-pagination + - /rest/guides/using-pagination-in-the-rest-api versions: fpt: '*' ghes: '*' diff --git a/src/fixtures/fixtures/content/rest/overview/about-githubs-apis.md b/src/fixtures/fixtures/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md similarity index 100% rename from src/fixtures/fixtures/content/rest/overview/about-githubs-apis.md rename to src/fixtures/fixtures/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md diff --git a/src/fixtures/fixtures/content/rest/overview/index.md b/src/fixtures/fixtures/content/rest/about-the-rest-api/index.md similarity index 84% rename from src/fixtures/fixtures/content/rest/overview/index.md rename to src/fixtures/fixtures/content/rest/about-the-rest-api/index.md index 3562c0e09636..36340c4bbdcf 100644 --- a/src/fixtures/fixtures/content/rest/overview/index.md +++ b/src/fixtures/fixtures/content/rest/about-the-rest-api/index.md @@ -8,5 +8,5 @@ versions: ghae: '*' ghec: '*' children: - - /about-githubs-apis + - /comparing-githubs-rest-api-and-graphql-api --- diff --git a/src/fixtures/fixtures/content/rest/index.md b/src/fixtures/fixtures/content/rest/index.md index 678acad855d3..e591e8931b27 100644 --- a/src/fixtures/fixtures/content/rest/index.md +++ b/src/fixtures/fixtures/content/rest/index.md @@ -5,10 +5,10 @@ intro: >- To create integrations, retrieve data, and automate your workflows, build with the {% data variables.product.prodname_dotcom %} REST API. introLinks: - quickstart: /rest/overview + quickstart: /rest featuredLinks: popular: - - /rest/overview/about-githubs-apis + - /rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api changelog: label: 'api, apis' layout: product-landing @@ -18,7 +18,7 @@ versions: ghae: '*' ghec: '*' children: - - /overview + - /about-the-rest-api - /actions --- diff --git a/src/fixtures/fixtures/rest-redirects.json b/src/fixtures/fixtures/rest-redirects.json index 9178ef1db688..94540bc4a297 100644 --- a/src/fixtures/fixtures/rest-redirects.json +++ b/src/fixtures/fixtures/rest-redirects.json @@ -393,7 +393,7 @@ "/v3/actions/workflow-jobs": "/en/rest/actions/workflow-jobs", "/v3/actions/workflow-runs": "/en/rest/actions/workflow-runs", "/v3/actions/workflows": "/en/rest/actions/workflows", - "/v3/activity/event_types": "/en/rest/overview/github-event-types", + "/v3/activity/event_types": "/en/rest/using-the-rest-api/github-event-types", "/v3/activity/events/types": "/en/webhooks/webhook-events-and-payloads", "/v3/activity/events": "/en/rest/activity/events", "/v3/activity/feeds": "/en/rest/activity/feeds", @@ -401,12 +401,12 @@ "/v3/activity/notifications": "/en/rest/activity/notifications", "/v3/activity/starring": "/en/rest/activity/starring", "/v3/activity/watching": "/en/rest/activity/watching", - "/v3/apps/available-endpoints": "/en/rest/overview/endpoints-available-for-github-app-installation-access-tokens", + "/v3/apps/available-endpoints": "/en/rest/authentication/endpoints-available-for-github-app-installation-access-tokens", "/v3/apps": "/en/rest/apps", "/v3/apps/installations": "/en/rest/apps/installations", "/v3/apps/marketplace": "/en/rest/apps/marketplace", "/v3/apps/oauth_applications": "/en/rest/apps/oauth-applications", - "/v3/apps/permissions": "/en/rest/overview/permissions-required-for-github-apps", + "/v3/apps/permissions": "/en/rest/authentication/permissions-required-for-github-apps", "/v3/checks": "/en/rest/checks", "/v3/checks/runs": "/en/rest/checks/runs", "/v3/checks/suites": "/en/rest/checks/suites", @@ -440,7 +440,7 @@ "/v3/issues/comments": "/en/rest/issues/comments", "/v3/issues/events": "/en/rest/issues/events", "/v3/issues": "/en/rest/issues", - "/v3/issues/issue-event-types": "/en/rest/overview/issue-event-types", + "/v3/issues/issue-event-types": "/en/rest/using-the-rest-api/issue-event-types", "/v3/issues/labels": "/en/rest/issues/labels", "/v3/issues/milestones": "/en/rest/issues/milestones", "/v3/issues/timeline": "/en/rest/issues/timeline", diff --git a/src/fixtures/tests/playwright-a11y.spec.ts b/src/fixtures/tests/playwright-a11y.spec.ts index 6813db989d0c..44957ed7e560 100644 --- a/src/fixtures/tests/playwright-a11y.spec.ts +++ b/src/fixtures/tests/playwright-a11y.spec.ts @@ -13,7 +13,7 @@ const pages: { [key: string]: string } = { productLanding: '/code-security', restCategory: '/rest/actions/artifacts', restLanding: '/rest', - restOverview: '/rest/overview/about-githubs-apis', + restOverview: '/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api', search: '/search?q=playwright', switchers: '/get-started/liquid/tool-platform-switcher', tableWithHeaders: '/get-started/liquid/table-row-headers', diff --git a/src/github-apps/lib/config.json b/src/github-apps/lib/config.json index 81ea3eedec7e..4ef0ef64dc6e 100644 --- a/src/github-apps/lib/config.json +++ b/src/github-apps/lib/config.json @@ -1,5 +1,5 @@ { - "targetDirectory": "content/rest/overview", + "targetDirectory": "content/rest/authentication", "pages": { "server-to-server-rest": { "frontmatterDefaults": { @@ -11,7 +11,7 @@ }, "autogenerated": "github-apps" }, - "targetFilename": "content/rest/overview/endpoints-available-for-github-app-installation-access-tokens.md" + "targetFilename": "content/rest/authentication/endpoints-available-for-github-app-installation-access-tokens.md" }, "user-to-server-rest": { "frontmatterDefaults": { @@ -23,7 +23,7 @@ }, "autogenerated": "github-apps" }, - "targetFilename": "content/rest/overview/endpoints-available-for-github-app-user-access-tokens.md" + "targetFilename": "content/rest/authentication/endpoints-available-for-github-app-user-access-tokens.md" }, "server-to-server-permissions": { "frontmatterDefaults": { @@ -35,21 +35,21 @@ }, "autogenerated": "github-apps" }, - "targetFilename": "content/rest/overview/permissions-required-for-github-apps.md" + "targetFilename": "content/rest/authentication/permissions-required-for-github-apps.md" }, "fine-grained-pat": { "frontmatterDefaults": { "versions": "data/features/pat-v2.yml", "autogenerated": "github-apps" }, - "targetFilename": "content/rest/overview/endpoints-available-for-fine-grained-personal-access-tokens.md" + "targetFilename": "content/rest/authentication/endpoints-available-for-fine-grained-personal-access-tokens.md" }, "fine-grained-pat-permissions": { "frontmatterDefaults": { "versions": "data/features/pat-v2.yml", "autogenerated": "github-apps" }, - "targetFilename": "content/rest/overview/permissions-required-for-fine-grained-personal-access-tokens.md" + "targetFilename": "content/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens.md" } }, "api-versions": { diff --git a/src/pages/[versionId]/rest/overview/[...restPage].tsx b/src/pages/[versionId]/rest/about-the-rest-api/[...restPage].tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/[...restPage].tsx rename to src/pages/[versionId]/rest/about-the-rest-api/[...restPage].tsx diff --git a/src/pages/[versionId]/rest/overview/index.tsx b/src/pages/[versionId]/rest/about-the-rest-api/index.tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/index.tsx rename to src/pages/[versionId]/rest/about-the-rest-api/index.tsx diff --git a/src/pages/[versionId]/rest/authentication/[...restPage].tsx b/src/pages/[versionId]/rest/authentication/[...restPage].tsx new file mode 100644 index 000000000000..3544355f3fb1 --- /dev/null +++ b/src/pages/[versionId]/rest/authentication/[...restPage].tsx @@ -0,0 +1 @@ +export { default, getServerSideProps } from '../../[productId]/index' diff --git a/src/pages/[versionId]/rest/overview/endpoints-available-for-fine-grained-personal-access-tokens.tsx b/src/pages/[versionId]/rest/authentication/endpoints-available-for-fine-grained-personal-access-tokens.tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/endpoints-available-for-fine-grained-personal-access-tokens.tsx rename to src/pages/[versionId]/rest/authentication/endpoints-available-for-fine-grained-personal-access-tokens.tsx diff --git a/src/pages/[versionId]/rest/overview/endpoints-available-for-github-app-installation-access-tokens.tsx b/src/pages/[versionId]/rest/authentication/endpoints-available-for-github-app-installation-access-tokens.tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/endpoints-available-for-github-app-installation-access-tokens.tsx rename to src/pages/[versionId]/rest/authentication/endpoints-available-for-github-app-installation-access-tokens.tsx diff --git a/src/pages/[versionId]/rest/overview/endpoints-available-for-github-app-user-access-tokens.tsx b/src/pages/[versionId]/rest/authentication/endpoints-available-for-github-app-user-access-tokens.tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/endpoints-available-for-github-app-user-access-tokens.tsx rename to src/pages/[versionId]/rest/authentication/endpoints-available-for-github-app-user-access-tokens.tsx diff --git a/src/pages/[versionId]/rest/authentication/index.tsx b/src/pages/[versionId]/rest/authentication/index.tsx new file mode 100644 index 000000000000..3544355f3fb1 --- /dev/null +++ b/src/pages/[versionId]/rest/authentication/index.tsx @@ -0,0 +1 @@ +export { default, getServerSideProps } from '../../[productId]/index' diff --git a/src/pages/[versionId]/rest/overview/permissions-required-for-fine-grained-personal-access-tokens.tsx b/src/pages/[versionId]/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens.tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/permissions-required-for-fine-grained-personal-access-tokens.tsx rename to src/pages/[versionId]/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens.tsx diff --git a/src/pages/[versionId]/rest/overview/permissions-required-for-github-apps.tsx b/src/pages/[versionId]/rest/authentication/permissions-required-for-github-apps.tsx similarity index 100% rename from src/pages/[versionId]/rest/overview/permissions-required-for-github-apps.tsx rename to src/pages/[versionId]/rest/authentication/permissions-required-for-github-apps.tsx diff --git a/src/pages/[versionId]/rest/using-the-rest-api/[...restPage].tsx b/src/pages/[versionId]/rest/using-the-rest-api/[...restPage].tsx new file mode 100644 index 000000000000..3544355f3fb1 --- /dev/null +++ b/src/pages/[versionId]/rest/using-the-rest-api/[...restPage].tsx @@ -0,0 +1 @@ +export { default, getServerSideProps } from '../../[productId]/index' diff --git a/src/pages/[versionId]/rest/using-the-rest-api/index.tsx b/src/pages/[versionId]/rest/using-the-rest-api/index.tsx new file mode 100644 index 000000000000..3544355f3fb1 --- /dev/null +++ b/src/pages/[versionId]/rest/using-the-rest-api/index.tsx @@ -0,0 +1 @@ +export { default, getServerSideProps } from '../../[productId]/index' diff --git a/src/redirects/lib/static/redirect-exceptions.txt b/src/redirects/lib/static/redirect-exceptions.txt index 9b4c05dd1078..030054efae39 100644 --- a/src/redirects/lib/static/redirect-exceptions.txt +++ b/src/redirects/lib/static/redirect-exceptions.txt @@ -11,7 +11,7 @@ - /admin/enterprise-support/overview/about-github-premium-support-for-github-enterprise # FPT versioning was removed as part of github/docs-content#5166 -/rest/overview/resources-in-the-rest-api +/rest/using-the-rest-api/resources-in-the-rest-api - /rest/overview/api-previews /enterprise-server@latest/search-github/getting-started-with-searching-on-github/enabling-githubcom-repository-search-from-your-private-enterprise-environment diff --git a/src/rest/lib/config.js b/src/rest/lib/config.js index aab2e4510502..f72f164bc964 100644 --- a/src/rest/lib/config.js +++ b/src/rest/lib/config.js @@ -5,9 +5,15 @@ // in the JSON file. // These paths must match the paths in src/pages/[versionId]/rest -export const nonAutomatedRestPaths = ['/rest/guides', '/rest/quickstart', '/rest/overview'] +export const nonAutomatedRestPaths = [ + '/rest/quickstart', + '/rest/about-the-rest-api', + '/rest/using-the-rest-api', + '/rest/authentication', + '/rest/guides', +] // This path is used to set the page in the // src/rest/components/ApiVersionPicker.tsx component. That component // has a link to the page that describes what api versioning is. -export const apiVersionPath = '/rest/overview/api-versions' +export const apiVersionPath = '/rest/about-the-rest-api/api-versions' diff --git a/src/rest/lib/config.json b/src/rest/lib/config.json index 7bd8e350ffff..c156cc2e61b5 100644 --- a/src/rest/lib/config.json +++ b/src/rest/lib/config.json @@ -34,10 +34,12 @@ "content/rest/index.md": { "startsWith": [ "quickstart", - "overview", + "about-the-rest-api", + "using-the-rest-api", + "authentication", "guides" ] } }, "sha": "1fd29675070876e3278e71b47f4f2606601bc698" -} \ No newline at end of file +} diff --git a/tests/fixtures/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md b/tests/fixtures/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md new file mode 100644 index 000000000000..c7af7b15be7b --- /dev/null +++ b/tests/fixtures/content/rest/about-the-rest-api/comparing-githubs-rest-api-and-graphql-api.md @@ -0,0 +1,13 @@ +--- +title: About GitHub's APIs +intro: 'Gentle and fun intro about APIs' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +--- + +## About {% data variables.product.company_short %}'s APIs + +First paragraph right here. diff --git a/tests/fixtures/content/rest/about-the-rest-api/index.md b/tests/fixtures/content/rest/about-the-rest-api/index.md new file mode 100644 index 000000000000..36340c4bbdcf --- /dev/null +++ b/tests/fixtures/content/rest/about-the-rest-api/index.md @@ -0,0 +1,12 @@ +--- +title: REST API overview +shortTitle: Overview +intro: 'Learn about resources, libraries, previews and troubleshooting for {% data variables.product.prodname_dotcom %}''s REST API.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +children: + - /comparing-githubs-rest-api-and-graphql-api +--- From 47d1eaaeb50d65d8f37b4ce11122ec1bc39c0ac8 Mon Sep 17 00:00:00 2001 From: Cory Calahan Date: Tue, 12 Dec 2023 00:29:19 -0800 Subject: [PATCH 2/7] Update configuring-private-networking-for-github-hosted-runners.md (#47654) --- .../configuring-private-networking-for-github-hosted-runners.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/admin/configuration/configuring-private-networking-for-hosted-compute-products/configuring-private-networking-for-github-hosted-runners.md b/content/admin/configuration/configuring-private-networking-for-hosted-compute-products/configuring-private-networking-for-github-hosted-runners.md index d81d1c53734f..e7d6f2e0b690 100644 --- a/content/admin/configuration/configuring-private-networking-for-hosted-compute-products/configuring-private-networking-for-github-hosted-runners.md +++ b/content/admin/configuration/configuring-private-networking-for-hosted-compute-products/configuring-private-networking-for-github-hosted-runners.md @@ -222,7 +222,7 @@ To use the script, fill in the placeholder environment variable values with the # - Resource group # - Network Security Group rules # - Virtual network (vnet) and subnet -# - Network Settings with specified subnet and GitHub Enterprise databse ID +# - Network Settings with specified subnet and GitHub Enterprise database ID # # It also registers the `GitHub.Network` resource provider with the subscription, # delegates the created subnet to the Actions service via the `GitHub.Network/NetworkSettings` From e5ffb9c18455103c6e7d14f9cc95736aa63c473a Mon Sep 17 00:00:00 2001 From: Daniel Adams Date: Tue, 12 Dec 2023 09:46:52 +0100 Subject: [PATCH 3/7] Update Markdown Alerts (#47602) Co-authored-by: github-actions Co-authored-by: Sophie <29382425+sophietheking@users.noreply.github.com> --- .../images/help/writing/alerts-rendered.png | Bin 64537 -> 50447 bytes .../basic-writing-and-formatting-syntax.md | 27 +++++++----------- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/assets/images/help/writing/alerts-rendered.png b/assets/images/help/writing/alerts-rendered.png index 9f2d50f797b29f7709c260755e3d1eda3c57b736..012a081f562f7e569073e37bde102e0355a93b82 100644 GIT binary patch literal 50447 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 literal 64537 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 z [!NOTE] -> Highlights information that users should take into account, even when skimming. +> Useful information that users should know, even when skimming content. > [!TIP] -> Optional information to help a user be more successful. +> Helpful advice for doing things better or more easily. > [!IMPORTANT] -> Crucial information necessary for users to succeed. +> Key information users need to know to achieve their goal. > [!WARNING] -> Critical content demanding immediate user attention due to potential risks. +> Urgent info that needs immediate user attention to avoid problems. > [!CAUTION] -> Negative potential consequences of an action. +> Advises about risks or negative outcomes of certain actions. ``` -Here are the rendered alerts. +Here are the rendered alerts: -![Screenshot of rendered Markdown alerts showing how Note, Tips, Important, Warning, and Caution render with different colored text and icons.](/assets/images/help/writing/alerts-rendered.png) +![Screenshot of rendered Markdown alerts showing how Note, Tip, Important, Warning, and Caution render with different colored text and icons.](/assets/images/help/writing/alerts-rendered.png) {% endif %} From 9ac92fbce9d10af70d1c33abe910a02fcae401cd Mon Sep 17 00:00:00 2001 From: Sophie <29382425+sophietheking@users.noreply.github.com> Date: Tue, 12 Dec 2023 10:05:02 +0100 Subject: [PATCH 4/7] [Improvement]: Update information on tax forms (#47474) Co-authored-by: Laura Coursen --- .../tax-information-for-github-sponsors.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md index 737c5620187c..1703e9455890 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md @@ -16,11 +16,11 @@ shortTitle: Tax information ## W-9/W-8 tax forms -By law, {% data variables.product.prodname_dotcom %} is required by the U.S. Internal Revenue Service (IRS) to collect tax information from all U.S. and non-U.S. maintainers. These forms are held by {% data variables.product.prodname_dotcom %} and are not required to be submitted to the IRS. +By law, {% data variables.product.prodname_dotcom %} is required by the U.S. Internal Revenue Service (IRS) to collect tax information from all U.S. and non-U.S. maintainers. These forms are held by Stripe and are not required to be submitted to the IRS. ### W-9 (U.S.) -The information from W-9 tax forms helps {% data variables.product.prodname_dotcom %} use the correct Taxpayer Identification Number (TIN) to report income paid to you to the IRS in a 1099 form. +The information from W-9 tax forms helps Stripe use the correct Taxpayer Identification Number (TIN) to report income paid to you to the IRS in a 1099 form. If you are a taxpayer in the United States, you must submit a [W-9](https://www.irs.gov/forms-pubs/about-form-w-9) before you can publish your {% data variables.product.prodname_sponsors %} profile. @@ -28,9 +28,9 @@ If you are a taxpayer in the United States, you must submit a [W-9](https://www. W-8 BEN and W-8 BEN-E tax forms help {% data variables.product.prodname_dotcom %} determine the beneficial owner of an amount subject to withholding. -If you are a taxpayer in any other region besides the United States, you must submit a [W-8 BEN](https://www.irs.gov/pub/irs-pdf/fw8ben.pdf) (individual) or [W-8 BEN-E](https://www.irs.gov/forms-pubs/about-form-w-8-ben-e) (company) form before you can publish your {% data variables.product.prodname_sponsors %} profile. For more information, see "[AUTOTITLE](/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-personal-account#submitting-your-tax-information)" and "[AUTOTITLE](/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization#submitting-your-tax-information)." {% data variables.product.prodname_dotcom %} will send you the appropriate forms, notify you when they are due, and give you a reasonable amount of time to complete and send in the forms. +If you are a taxpayer in any other region besides the United States, you must submit a [W-8 BEN](https://www.irs.gov/pub/irs-pdf/fw8ben.pdf) (individual) or [W-8 BEN-E](https://www.irs.gov/forms-pubs/about-form-w-8-ben-e) (company) form before you can publish your {% data variables.product.prodname_sponsors %} profile. For more information, see "[AUTOTITLE](/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-personal-account#submitting-your-tax-information)" and "[AUTOTITLE](/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization#submitting-your-tax-information)." Stripe will send you the appropriate forms, notify you when they are due, and give you a reasonable amount of time to complete and send in the forms. -If you have been assigned an incorrect tax form, contact us through the {% data variables.contact.contact_support_portal %} to get reassigned the correct one for your situation. +If you have been assigned an incorrect tax form, you can contact Stripe to get reassigned the correct one for your situation. For more information, see [Contact Us](https://support.stripe.com/contact/email?topic=connect) on the Stripe Support site. ### Tax identification numbers @@ -61,7 +61,7 @@ If you are a taxpayer in the United States and earn more than 600 US dollars in ## Sales tax -GitHub is providing information to assist you in calculating your sales tax obligations. This information is not personalized to your country or tax situation and we recommend you talk to a professional to understand your specific obligations. However, we'd like to provide some high-level information to help you understand the general principles of digital sales tax. +{% data variables.product.prodname_dotcom %} is providing information to assist you in calculating your sales tax obligations. This information is not personalized to your country or tax situation and we recommend you talk to a professional to understand your specific obligations. However, we'd like to provide some high-level information to help you understand the general principles of digital sales tax. In most countries around the world, sales tax for digital transactions is based on the location of the recipient, not on the seller. For example, if you are a maintainer in the United States and you provide a taxable benefit to a Sponsor in Germany, German sales tax would apply. @@ -73,4 +73,4 @@ In the EU and most other countries and regions, B2C sales are subject to sales t ## Further reading -- [Viewing your sponsors and sponsorships](/sponsors/receiving-sponsorships-through-github-sponsors/viewing-your-sponsors-and-sponsorships) +- "[AUTOTITLE](/sponsors/receiving-sponsorships-through-github-sponsors/viewing-your-sponsors-and-sponsorships)" From be3b080f6df773b2e75cf21b7bd3c8cd2c2b114b Mon Sep 17 00:00:00 2001 From: Matt Pollard Date: Tue, 12 Dec 2023 10:21:30 +0100 Subject: [PATCH 5/7] Enterprise bug fix hour for week of December 4, 2023 (#47504) Co-authored-by: Vanessa --- .../configuring-backups-on-your-instance.md | 1 + .../using-ldap-for-enterprise-iam/using-ldap.md | 6 +++++- .../managing-dormant-users.md | 6 +++++- .../about-per-user-pricing.md | 4 ++-- .../style-guide-and-content-model/style-guide.md | 10 ++++++++++ 5 files changed, 23 insertions(+), 4 deletions(-) diff --git a/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md b/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md index 471d03cc3dc9..024277ea058d 100644 --- a/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md +++ b/content/admin/backing-up-and-restoring-your-instance/configuring-backups-on-your-instance.md @@ -174,6 +174,7 @@ Network settings are excluded from the backup snapshot. After restoration, you m 1. Ensure maintenance mode is enabled on the primary instance and all active processes have completed. For more information, see "[AUTOTITLE](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode)." 1. Stop replication on all replica nodes in a high-availability configuration. For more information, see "[AUTOTITLE](/admin/enterprise-management/configuring-high-availability/about-high-availability-configuration#ghe-repl-stop)." +1. Provision a new {% data variables.product.product_name %} instance to use as a target for the restoration of your backup. For more information, see "[AUTOTITLE](/admin/installation/setting-up-a-github-enterprise-server-instance)." 1. If {% data variables.location.product_location %} has {% data variables.product.prodname_actions %} enabled, you must configure the external storage provider for {% data variables.product.prodname_actions %} on the replacement instance. For more information, see "[AUTOTITLE](/admin/github-actions/advanced-configuration-and-troubleshooting/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled)." ### Starting the restore operation diff --git a/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md b/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md index a21d582bf8f1..ad469dc4a440 100644 --- a/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md +++ b/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md @@ -114,6 +114,8 @@ When this option is selected, the certificate is validated to make sure: You can establish role-based access control for users from your LDAP server by synchronizing {% data variables.product.prodname_ghe_server %} users and team membership against your established LDAP groups. For more information, see "[AUTOTITLE](/organizations/organizing-members-into-teams/creating-a-team#creating-teams-with-ldap-sync-enabled)." +LDAP sync does not create user accounts on {% data variables.location.product_location %}. For more information, see "[Viewing and creating LDAP users](#viewing-and-creating-ldap-users)." + {% note %} **Note:** Using LDAP Synchronization with groups that exceed 1499 members may lead to team membership synchronization failures. @@ -124,7 +126,7 @@ If you need help determining if modifying the `MaxValRange` is the right approac {% endnote %} -To enable LDAP Sync, in your LDAP settings, select **Synchronize Emails**, **Synchronize SSH Keys**, or **Synchronize GPG Keys** . +To enable LDAP Sync, in your LDAP settings, select **Synchronize Emails**, **Synchronize SSH Keys**, or **Synchronize GPG Keys**. After you enable LDAP sync, a synchronization job will run at the specified time interval to perform the following operations on each user account: @@ -188,6 +190,8 @@ If disclosing such information is not desired, your company or organization shou ## Viewing and creating LDAP users +When you use LDAP, your instance creates a user account the first time someone successfully signs in using LDAP credentials. Alternatively, you can manually provision a user account. + You can view the full list of LDAP users who have access to your instance and provision new users. {% data reusables.enterprise_site_admin_settings.sign-in %} diff --git a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md index af4e9c7601e8..274da19541b7 100644 --- a/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md +++ b/content/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/managing-dormant-users.md @@ -8,6 +8,7 @@ redirect_from: - /admin/user-management/managing-dormant-users - /admin/user-management/managing-users-in-your-enterprise/managing-dormant-users intro: '{% data reusables.enterprise-accounts.dormant-user-activity-threshold %}' +permissions: "{% ifversion ghec or ghae %}Enterprise owners can manage dormant users for an enterprise.{% elsif ghes %}Site administrators can manage dormant users on a {% data variables.product.product_name %} instance.{% endif %}" versions: ghec: '*' ghes: '*' @@ -37,12 +38,14 @@ You can customize the dormancy threshold for {% data variables.location.product_ Dormancy applies to both enterprise members and outside collaborators. +{% ifversion ghes %} + ## Viewing dormant users {% data reusables.enterprise-accounts.viewing-dormant-users %} {% data reusables.enterprise_site_admin_settings.access-settings %} -1. In the left sidebar, click **Dormant users**.{% ifversion ghes %} +1. In the left sidebar, click **Dormant users**. 1. To suspend all the dormant users in this list, at the top of the page, click **Suspend all**. ## Determining whether a user account is dormant @@ -62,6 +65,7 @@ Dormancy applies to both enterprise members and outside collaborators. {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.options-tab %} 1. Under "Dormancy threshold", select the dropdown menu, and click the desired dormancy threshold. + {% endif %} {% ifversion ghec %} diff --git a/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md b/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md index ff1c3ac64406..78cbe8c36b3b 100644 --- a/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md +++ b/content/billing/managing-the-plan-for-your-github-account/about-per-user-pricing.md @@ -108,11 +108,11 @@ If your enterprise does not use {% data variables.product.prodname_emus %}, you ### Accounts that consume a license on {% data variables.product.prodname_ghe_server %} -Each user account on {% data variables.product.prodname_ghe_server %} consumes a seat. +After a user successfully authenticates to a {% data variables.product.prodname_ghe_server %} instance for the first time, the user consumes a seat. Suspended users are not counted when calculating the number of licensed users consuming seats. For more information, see "[Suspending and unsuspending users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/suspending-and-unsuspending-users){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} -Dormant users do occupy a seat license. As such, you can choose to suspend dormant users to release user licenses. For more information, see "[Managing dormant users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} +Dormant users do occupy a seat license. Administrators can suspend dormant users to free licenses. For more information, see "[Managing dormant users]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} {% endif %} diff --git a/content/contributing/style-guide-and-content-model/style-guide.md b/content/contributing/style-guide-and-content-model/style-guide.md index 9a7cf82df386..c0c60f06055e 100644 --- a/content/contributing/style-guide-and-content-model/style-guide.md +++ b/content/contributing/style-guide-and-content-model/style-guide.md @@ -217,6 +217,14 @@ Use italics to emphasize words or parts of a sentence. Use emphasis sparingly fo - **Use:** _For types of packages other than containers_, to the right of the package version click **Delete**. - **Avoid:** Next to _**Title**_, add a descriptive label for your new key. +## Error messages + +When you include the text of an error message from a {% data variables.product.company_short %} product or interface in an article, format the text according to the interface where the message appears. + +- If the message appears in {% data variables.product.prodname_dotcom %}'s web interface, or in a graphical client app like {% data variables.product.prodname_desktop %} or {% data variables.product.prodname_mobile %}, treat the message like other text in the UI. For more information, see "[User interface text](#user-interface-text)." + +- If the message appears in a command-line interface, log output, or a response from an API, reproduce the text exactly and use backticks to format the message using a monospaced font. + ## Footnotes Avoid using footnotes where possible. Consider instead whether you could use a [callout](#callouts) or present the information in another way. See some [examples of alternatives to footnotes from NICE.org.uk](https://www.nice.org.uk/corporate/ecd6/chapter/footnotes). @@ -841,6 +849,7 @@ A release note for a bug fix answers the following questions. - Language like "fixed a bug..." or "fixed an issue..." is implied and unnecessary. - To reduce repetition and unnecessary words, "now" is usually implied. - To clarify actors and impact, avoid passive language when possible. +- If the release note includes an error message, format the message according to the guidance in "[Error messages](#error-messages)." #### Examples of release notes for bug fixes @@ -896,6 +905,7 @@ A release note for a known issue answers the following questions. - To clarify actors and impact, avoid passive language when possible. - To reduce repetition and unnecessary words, "now" is usually implied. +- If the release note includes an error message, format the message according to the guidance in "[Error messages](#error-messages)." - If useful, include relevant links to GitHub Docs. - Known issues are also a type of content on GitHub Docs. For more information, see "[AUTOTITLE](/contributing/style-guide-and-content-model/troubleshooting-content-type#known-issues)." If useful, write or link to more in-depth and contextually relevant content in the docs. From 9dd6c0eeb58aecd688a45358957a2ab9188d5ded Mon Sep 17 00:00:00 2001 From: Felicity Chapman Date: Tue, 12 Dec 2023 09:54:43 +0000 Subject: [PATCH 6/7] Add brief readme for new script and workflow for code scanning query help tables (#47487) Co-authored-by: github-actions Co-authored-by: Peter Bengtsson --- src/code-scanning/README.md | 64 +++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 src/code-scanning/README.md diff --git a/src/code-scanning/README.md b/src/code-scanning/README.md new file mode 100644 index 000000000000..2dbadbf1306d --- /dev/null +++ b/src/code-scanning/README.md @@ -0,0 +1,64 @@ +# Code scanning query tables + +This nascent pipeline creates autogenerated documentation docs.github.com from the query suites included with the [CodeQL bundle](https://github.com/github/codeql-action/releases). + +The pipeline is used to generate Markdown tables that are stored in reusable files and used in article pages on the docs.github.com site. + +## How does it work + +```mermaid +--- +title: "Process for generating Code scanning query tables" +--- +flowchart TB + +accDescr: A flow chart describing how the automation generates documentation for code scanning queries. + + start([Start]) --> checkout[Checkout the codeql repository] + start --- download[Download the CodeQL CLI] + checkout --- query-suites[fa:fa-file Query suites *.qls] + query-suites ---> generate[Generate tables:src/code-scanning/scripts/generate-code-scanning-query-lists.ts] + download --- codeql-cli[CodeQL CLI: codeql.exe] + codeql-cli --> generate + generate --- markdown[fa:fa-file Reusable files *.md] + markdown --> pr[Generate a PR overwriting:data/reusables/code-scanning/codeql-query-tables/*.md] + pr --> finish([End]) + +%% Define styles + classDef start fill:#1AAC9D, color:white + classDef action fill:#6557F6, color:white + classDef finish fill:#F8C324, color:white + classDef file fill:#ddd + +%% Assign styles + class start start; + class finish finish; + class checkout,download,generate,pr action; + class markdown,query-suites,codeql-cli file; +``` + +A [workflow](.github/workflows/generate-code-scanning-query-lists.yml) is used to trigger the automation of the code scanning query tables documentation. The workflow is manually triggered by a member of the GitHub Docs team approximately every two weeks to align to releases of the CodeQL CLI. The workflow takes an input parameter that specifies the branch to pull the source files from in the semmle-code repo. If the branch input is omitted, the workflow will default to the `main` branch. + +The workflow runs the `npm run generate-code-scanning-query-list` script, which generates Markdown files under `data/reusables/code-scanning/codeql-query-tables`. + +The workflow automatically creates a new pull request with the changes and the label `codeql-query-tables`. + +## Local development + +To run the pipeline locally, see the comments in the [script](scripts/generate-code-scanning-query-list.ts). + +## Content team + +The content writers can use the reusables in any content article. They have no need to make any changes to the script unless additional built-in query suites are added. + +## How to get help + +### For workflow and script problems + +Slack: `#docs-engineering` +Repo: `github/docs-engineering` + +### For CodeQL repository and CLI problems + +Slack: `#code-scanning-internal-dx` +Repo: `github/code-scanning-internal-dx-team` From a687a2fe033b45013e5ce3a6572ee01e1b14c202 Mon Sep 17 00:00:00 2001 From: hubwriter Date: Tue, 12 Dec 2023 10:31:46 +0000 Subject: [PATCH 7/7] Copilot: update who can index a repo (#47686) --- .../using-github-copilot-chat-in-githubcom.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/copilot/github-copilot-enterprise/copilot-chat-in-github/using-github-copilot-chat-in-githubcom.md b/content/copilot/github-copilot-enterprise/copilot-chat-in-github/using-github-copilot-chat-in-githubcom.md index de8dcb324ab0..774538dce470 100644 --- a/content/copilot/github-copilot-enterprise/copilot-chat-in-github/using-github-copilot-chat-in-githubcom.md +++ b/content/copilot/github-copilot-enterprise/copilot-chat-in-github/using-github-copilot-chat-in-githubcom.md @@ -26,7 +26,7 @@ On {% data variables.product.prodname_dotcom_the_website %}, you can use {% data The following limitations apply to this beta release of {% data variables.product.prodname_copilot_chat_dotcom %}: - {% data reusables.copilot.chat-limited-docset-availability %} -- Chat responses may be suboptimal if you ask questions about a specific repository that you've selected as a context, and the repository has not been indexed for semantic code search. Owners of organizations {% ifversion ghec %}or enterprises {% endif %} can index up to {% data variables.copilot.max-chat-indexed-repos %} repositories for each organization. +- Chat responses may be suboptimal if you ask questions about a specific repository that you've selected as a context, and the repository has not been indexed for semantic code search. Anyone who gets access to {% data variables.product.prodname_copilot_short %} from the organization that owns a repository can index that repository. Up to {% data variables.copilot.max-chat-indexed-repos %} repositories can be indexed for each organization. - The quality of the results from {% data variables.product.prodname_copilot_chat_short %} may, in some situations, be degraded if very large files, or a large number of files, are used as a context for a question. ## Prerequisites @@ -92,7 +92,7 @@ You can choose a specific context, such as a particular repository or a document {% data variables.product.prodname_copilot_short %}'s ability to answer natural language questions like these in a repository context is improved when the repository has been indexed for semantic code search. The indexing status of the repository is displayed when you start a conversation that has a repository context. - If you are an organization owner{% ifversion ghec %}, or an enterprise owner,{% endif %} and the repository has not been indexed, an **Index this repository** button is displayed. Click this button to start the indexing process. You can index up to {% data variables.copilot.max-chat-indexed-repos %} repositories in an organization. + If you get access to {% data variables.product.prodname_copilot_short %} from the organization that owns the repository, and the repository has not been indexed, an **Index this repository** button is displayed. Click this button to start the indexing process. Up to {% data variables.copilot.max-chat-indexed-repos %} repositories can be indexed for each organization. ![Screenshot showing the 'Index this repository' button highlighted with a dark orange outline.](/assets/images/help/copilot/index-this-repo.png)