Quotas and limits

This page describes API Gateway's quota limits.

Limits on APIs, API configs, and gateways

API Gateway enforces the following limits on APIs, API configs, and gateways:

  • APIs - 50 total
  • API Configs - 100 per API
  • Gateways - 50 per region

If you attempt to create a second API config before the first API config creation for the same API completes, one or both configs may not be available for later use in a Gateway.

Request rate limits

A rate limit of 10,000,000 quota units per 100 seconds per service producer project is enforced by default. One quota unit is consumed for each call to services.check and for each operation reported by services.report.

Payload size limits

The following limits apply specifically to max payload size for traffic through deployed gateways:

Limit Amount
Request size 32 megabytes
Response size 32 megabytes
gRPC transcoding response size 1 megabyte
gRPC transcoding request size 1 megabyte

Streaming is not supported.

Header size limits

The following limits apply specifically to max header size for traffic through deployed gateways:

Limit Amount
Request headers size 60 kilobytes

The backend service called by API Gateway may have lower limits.

How to increase quota

Cloud Quotas adjustment requests are subject to review. If your quota adjustment request requires review, you receive an email acknowledging receipt of your request. If you need further assistance, respond to the email. After reviewing your request, you receive an email notification indicating whether your request was approved. You can request a quota adjustment by using the Google Cloud console, the Cloud Quotas API, or the Google Cloud CLI. The following instructions show how to request a new quota value by using the Google Cloud console or by making a REST request to the Cloud Quotas API.

Console

To request a quota adjustment, follow these steps:

  1. In the Google Cloud console, go to the IAM & Admin > Quotas & System Limits page:

    Go to Quotas & System Limits

    If prompted to select a project, select the project that you want to adjust.

  2. Find the quota that you want to adjust and open the Quota changes dialog:

    • Quotas that aren't in the table:

      • Search for your quota in the Filter search box. Don't specify the region or zone (if applicable) because quotas that don't have use or adjusted values don't show in the table.
      • Find any entry for your quota in the table. This can be the default entry or any entry with history regardless of region or zone.
      • In the line for the entry, click More actions > Configure additional regions/zones.
      • Select the region or zone that you want to adjust. Click Edit.
    • All other quotas:

      • Search for your quota in the Filter search box.
      • In the line for the entry, select the checkbox for your quota.
      • Click Edit.

    The Quota changes dialog appears.

  3. If you see a link to Apply for higher quota above the New value field and you want to increase your quota value beyond the number indicated on the screen, follow the link. Fill out the form, submit it, and skip the remaining steps here. Otherwise, continue following this guide.

  4. In the New value field, enter the increased quota value that you want. If a Request description field appears, enter a description. Click Done.

    • If you see a checkbox with the text "I understand that this request will remove any overrides," your quota value is set below the default. Adjusting the quota value to or beyond the default removes the override. To proceed, select the checkbox. Learn more about quota overrides.

    If a Next button appears, click Next and fill out your contact details in the screen that follows.

  5. Click Submit request.

If you find that you can't request an adjustment from the console, request the increase from Cloud Customer Care.

To learn more about how the quota increase process works, see About quota adjustments.

Batching requests for quota adjustments

You can batch requests for quota adjustments by selecting the checkbox for each quota that you want to include. However, batching requests can increase the amount of time it takes for Google Cloud to review your request.

To reduce review time, group quota adjustment requests by product and area. For example, if you want to request adjustments to networking and Compute Engine VM quotas, create one request for the networking quotas and another request for the Compute Engine VM quotas.

REST

To request a quota adjustment from the Cloud Quotas API, use the following code sample. Fill in the editable placeholders with your values. To learn about the placeholder fields, see the descriptions following the code sample.

POST projects/PROJECT_NUMBER/locations/global/quotaPreferences?quotaPreferenceId=QUOTA_PREFERENCE_ID {
    "service": "SERVICE_ID",
    "quotaId": "QUOTA_ID",
    "quotaConfig": { "preferredValue": "NEW_QUOTA_VALUE" },
    "dimensions": { "DIMENSION_1": "VALUE_1", "DIMENSION_2": "VALUE_2" },
    "justification": "JUSTIFICATION",
    "contactEmail": "EMAIL"
}

Replace the following:

  • PROJECT_NUMBER: Your Google Cloud project number. You can find your project number on the Welcome page of the Google Cloud console or by running the following gcloud CLI command:

    PROJECT=$(gcloud info --format='value(config.project)')
    gcloud projects describe ${PROJECT} --format="value(projectNumber)"
  • QUOTA_PREFERENCE_ID: The ID of the quota preference you're updating.

  • QUOTA_ID: The ID of the quota that you're updating.

  • SERVICE_ID: The ID of the Google Cloud that the quota you're adjusting belongs to. This is usually of the form SERVICE_NAME.googleapis.com. For example, the Compute Engine service name is compute.googleapis.com.

  • DIMENSION_1: The type of dimension that you want to adjust—for example, region or zone—. You can include multiple dimensions. Separate each dimension by following its value— for example, VALUE_1—with a comma. To adjust all dimensions of the quota, omit this line.

  • VALUE_1: The value of the preceding dimension. For example, if preceding dimension is region, enter a region such as us-central1.

  • JUSTIFICATION: The reason for this request.

  • EMAIL: An email address that can be used as a contact, in case Google Cloud needs more information to make a decision before additional quota can be granted.

Example request

The following is an example of a quota value increase request for the Compute Engine quota PUS-PER-GPU-FAMILY-per-project-region. It requests a quota value of 100 for machines of the GPU family NVIDIA_H100 that are in the region us-central1.

POST projects/123/locations/global/quotaPreferences?quotaPreferenceId=my_quota_preference_ID {
    "service": "compute.googleapis.com",
    "quotaId": "GPUS-PER-GPU-FAMILY-per-project-region",
    "quotaConfig": { "preferredValue": 100 },
    "dimensions": { "region": "us-central1", "gpu_family": "NVIDIA_H100" },
    "justification": "My justification.",
    "contactEmail": "222larabrown@gmail.com"
}