diff --git a/assets/images/enterprise/2.22/management-console/abuse-rate-limits-checkbox.png b/assets/images/enterprise/2.22/management-console/abuse-rate-limits-checkbox.png new file mode 100644 index 0000000000..ceb93203e9 Binary files /dev/null and b/assets/images/enterprise/2.22/management-console/abuse-rate-limits-checkbox.png differ diff --git a/assets/images/enterprise/3.0/management-console/abuse-rate-limits-checkbox.png b/assets/images/enterprise/3.0/management-console/abuse-rate-limits-checkbox.png new file mode 100644 index 0000000000..ceb93203e9 Binary files /dev/null and b/assets/images/enterprise/3.0/management-console/abuse-rate-limits-checkbox.png differ diff --git a/assets/images/enterprise/3.1/management-console/abuse-rate-limits-checkbox.png b/assets/images/enterprise/3.1/management-console/abuse-rate-limits-checkbox.png new file mode 100644 index 0000000000..ceb93203e9 Binary files /dev/null and b/assets/images/enterprise/3.1/management-console/abuse-rate-limits-checkbox.png differ diff --git a/assets/images/enterprise/management-console/api-rate-limits-checkbox.png b/assets/images/enterprise/management-console/api-rate-limits-checkbox.png index 3e9e5ca813..e2f94c57cd 100644 Binary files a/assets/images/enterprise/management-console/api-rate-limits-checkbox.png and b/assets/images/enterprise/management-console/api-rate-limits-checkbox.png differ diff --git a/assets/images/enterprise/management-console/git-rate-limits-checkbox.png b/assets/images/enterprise/management-console/git-rate-limits-checkbox.png index 452bb886a5..1edd105d2c 100644 Binary files a/assets/images/enterprise/management-console/git-rate-limits-checkbox.png and b/assets/images/enterprise/management-console/git-rate-limits-checkbox.png differ diff --git a/assets/images/enterprise/management-console/secondary-rate-limits-checkbox.png b/assets/images/enterprise/management-console/secondary-rate-limits-checkbox.png new file mode 100644 index 0000000000..0285660372 Binary files /dev/null and b/assets/images/enterprise/management-console/secondary-rate-limits-checkbox.png differ diff --git a/content/actions/guides/closing-inactive-issues.md b/content/actions/guides/closing-inactive-issues.md index 9c9f1a0b1c..970d8e1d59 100644 --- a/content/actions/guides/closing-inactive-issues.md +++ b/content/actions/guides/closing-inactive-issues.md @@ -71,7 +71,7 @@ Based on the `schedule` parameter (for example, every day at 1:30 UTC), your wor You can view the history of your workflow runs to see this workflow run periodically. For more information, see "[Viewing workflow run history](/actions/managing-workflow-runs/viewing-workflow-run-history)." -This workflow will only label and/or close 30 issues at a time in order to avoid rate limit abuse. You can configure this with the `operations-per-run` setting. For more information, see the [`actions/stale` action documentation](https://github.com/marketplace/actions/close-stale-issues). +This workflow will only label and/or close 30 issues at a time in order to avoid exceeding a rate limit. You can configure this with the `operations-per-run` setting. For more information, see the [`actions/stale` action documentation](https://github.com/marketplace/actions/close-stale-issues). ## Next steps diff --git a/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md b/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md index 27c60ec8b3..755434af0e 100644 --- a/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md +++ b/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md @@ -29,19 +29,24 @@ You can exempt a list of users from API rate limits using the `ghe-config` utili {% data reusables.enterprise_site_admin_settings.access-settings %} {% data reusables.enterprise_site_admin_settings.management-console %} -2. Under "Rate Limiting", select **Enable API Rate Limiting**. +2. Under "Rate Limiting", select **Enable HTTP API Rate Limiting**. ![Checkbox for enabling API rate limiting](/assets/images/enterprise/management-console/api-rate-limits-checkbox.png) 3. Type limits for authenticated and unauthenticated requests for each API, or accept the pre-filled default limits. {% data reusables.enterprise_management_console.save-settings %} -## Enabling abuse rate limits +## Enabling secondary rate limits -Setting abuse rate limits protects the overall level of service on {% data variables.product.product_location %}. +Setting secondary rate limits protects the overall level of service on {% data variables.product.product_location %}. {% data reusables.enterprise_site_admin_settings.access-settings %} {% data reusables.enterprise_site_admin_settings.management-console %} +{% ifversion ghes > 3.1 %} +2. Under "Rate Limiting", select **Enable Secondary Rate Limiting**. + ![Checkbox for enabling secondary rate limiting](/assets/images/enterprise/management-console/secondary-rate-limits-checkbox.png) +{% else %} 2. Under "Rate Limiting", select **Enable Abuse Rate Limiting**. - ![Checkbox for enabling abuse rate limiting](/assets/images/enterprise/management-console/abuse-rate-limits-checkbox.png) + ![Checkbox for enabling abuse rate limiting](/assets/images/enterprise/management-console/abuse-rate-limits-checkbox.png) +{% endif %} 3. Type limits for Total Requests, CPU Limit, and CPU Limit for Searching, or accept the pre-filled default limits. {% data reusables.enterprise_management_console.save-settings %} diff --git a/content/rest/guides/best-practices-for-integrators.md b/content/rest/guides/best-practices-for-integrators.md index 9d52dafafa..ffe3a7d267 100644 --- a/content/rest/guides/best-practices-for-integrators.md +++ b/content/rest/guides/best-practices-for-integrators.md @@ -140,13 +140,13 @@ If you hit a rate limit, it's expected that you back off from making requests an You can always [check your rate limit status](/rest/reference/rate-limit) at any time. Checking your rate limit incurs no cost against your rate limit. -## Dealing with abuse rate limits +## Dealing with secondary rate limits -[Abuse rate limits](/rest/overview/resources-in-the-rest-api#abuse-rate-limits) are another way we ensure the API's availability. +[Secondary rate limits](/rest/overview/resources-in-the-rest-api#secondary-rate-limits) are another way we ensure the API's availability. To avoid hitting this limit, you should ensure your application follows the guidelines below. * Make authenticated requests, or use your application's client ID and secret. Unauthenticated - requests are subject to more aggressive abuse rate limiting. + requests are subject to more aggressive secondary rate limiting. * Make requests for a single user or client ID serially. Do not make requests for a single user or client ID concurrently. * If you're making a large number of `POST`, `PATCH`, `PUT`, or `DELETE` requests for a single user diff --git a/content/rest/overview/resources-in-the-rest-api.md b/content/rest/overview/resources-in-the-rest-api.md index b0cea6b288..a1c5137956 100644 --- a/content/rest/overview/resources-in-the-rest-api.md +++ b/content/rest/overview/resources-in-the-rest-api.md @@ -433,11 +433,11 @@ $ curl -u my_client_id:my_client_secret {% data variables.product.api_url_pre %} If you exceed your rate limit using Basic Authentication or OAuth, you can likely fix the issue by caching API responses and using [conditional requests](#conditional-requests). -### Abuse rate limits +### Secondary rate limits -In order to provide quality service on {% data variables.product.product_name %}, additional rate limits may apply to some actions when using the API. For example, using the API to rapidly create content, poll aggressively instead of using webhooks, make multiple concurrent requests, or repeatedly request data that is computationally expensive may result in abuse rate limiting. +In order to provide quality service on {% data variables.product.product_name %}, additional rate limits may apply to some actions when using the API. For example, using the API to rapidly create content, poll aggressively instead of using webhooks, make multiple concurrent requests, or repeatedly request data that is computationally expensive may result in secondary rate limiting. -Abuse rate limits are not intended to interfere with legitimate use of the API. Your normal rate limits should be the only limit you target. To ensure you're acting as a good API citizen, check out our [Best Practices guidelines](/guides/best-practices-for-integrators/). +Secondary rate limits are not intended to interfere with legitimate use of the API. Your normal rate limits should be the only limit you target. To ensure you're acting as a good API citizen, check out our [Best Practices guidelines](/guides/best-practices-for-integrators/). If your application triggers this rate limit, you'll receive an informative response: @@ -447,8 +447,8 @@ If your application triggers this rate limit, you'll receive an informative resp > Connection: close > { -> "message": "You have triggered an abuse detection mechanism and have been temporarily blocked from content creation. Please retry your request again later.", -> "documentation_url": "{% data variables.product.doc_url_pre %}/overview/resources-in-the-rest-api#abuse-rate-limits" +> "message": "You have exceeded a secondary rate limit and have been temporarily blocked from content creation. Please retry your request again later.", +> "documentation_url": "{% data variables.product.doc_url_pre %}/overview/resources-in-the-rest-api#secondary-rate-limits" > } ```