Merge branch 'main' into repo-sync
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 173 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 207 KiB |
|
After Width: | Height: | Size: 156 KiB |
@@ -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
|
||||
|
||||
|
||||
@@ -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**.
|
||||

|
||||
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**.
|
||||

|
||||
{% else %}
|
||||
2. Under "Rate Limiting", select **Enable Abuse Rate Limiting**.
|
||||

|
||||

|
||||
{% 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 %}
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"
|
||||
> }
|
||||
```
|
||||
|
||||
|
||||