Limits and quotas protect the Google infrastructure from an automated process that uses the Reseller API in an inappropriate way. Excessive requests from an API might result from a harmless typo, or might result from an inefficiently designed system that makes needless API calls. Regardless of the cause, blocking traffic from a specific source when it reaches a certain level is necessary for the overall health of the Google Workspace system. It ensures that one developer's actions can not negatively impact the larger community.
API request failures
In the unlikely event that your API request fails, your application receives an
HTTP status code response. A status code of 403
has error
information about incorrect input and an HTTP status code of 503
has error information indicating which API quotas have been exceeded. These
responses let your custom application detect these errors and take appropriate
action.
Time-based errors
For all errors that are time based (maximum of N things for N seconds per
thread), especially the 503
status code errors, we recommend that
your code catch the exception and by using
an
exponential backoff
algorithm, wait for a small delay before retrying the failed call. A
Reseller API example for one thread
is to wait 5 seconds and retry the failed call. If the request is successful,
repeat this pattern for the other threads. If the second request isn't
successful, your application should scale back on the frequency of the request
until a call is successful. For example, increase the initial 5 second delay
to 10 seconds and retry your failed call again. Also, decide on a retry limit.
For example retry a request 5 to 7 times with different delay times before
your application returns an error to the user.
Limits
API limit categories | Limits |
---|---|
Subscription purchaseOrderId |
This property accepts up to 80 plain text characters. |
Subscription maxResults |
The maxResults query string can be 1 - 100 results.
The default is 20 results.
|
Transfer Token (customerAuthToken ) |
A customer's transfer token is valid for 30 days after it's generated. |
Maximum number of users for a customer | Depending on your contract, the maximum number of users can either be 50,000 or the maximum defined in your reseller contract. |
Unauthorized requests | Google doesn't allow unauthorized requests to the Reseller API. A request is considered unauthorized if no authorization token is provided. For more information, see Learn about authentication & authorization. |
Other types of limits
Other types of limits | Limitations and guidelines |
---|---|
Data format |
The data format is in the JavaScript Object Notation
JSON.
JSON is a common internet format that provides a method of representing arbitrary data structures. JSON is a text format that is completely language-independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, and Python. |
Time format | All date times are in the Epoch converter in milliseconds. This format applies to the values for the subscription creation time, a plan's commitment start and end times, and a 30 day free trial's end time. |