8.2.    Get user API rate limits.

GET GetRateLimits

Description:  Get the API rate limits for your account. API limits are designed to ensure fair use for all API users, to manage server loads, prevent abuse and maintain system stability and performance. Each user is assigned a number of API points that resets at the end of every API limit period.

There are two rate limits that may be enabled. A 'burst' limit, setting the maximum number of API points used in any one period and a 'daily' limit that sets a cap on the total number used in any 24 hour period. Rate limits are reset at the end of each limit period.

Normally API authentication and account requests use zero API points but dataset and metadata requests will. Please refer to the individual endpoint documentation in this guide for specific details.

Rate limits may change at any time to aid system stability and performance. Rate limits are set so they should never be triggered in normal use, however rate limits can be customised for individual users if the default limits that were set do not suit.

If a rate limit event does occur, a 429 error message is returned explaining the cause and when the limit will be reset.

API Usage:   This endpoint uses zero API calls.



GET
Sample Request:

GET https://[server]/GetRateLimits?SessionToken=YOUR_SESSION_TOKEN
								
Note

User rate limits can be viewed on the "My Account" page by logging in (using the top menu above) and viewing the "Your API Key" section.

Request Parameters

Paeameter Type Description
SessionToken String A valid Session Token received from the GetSessionToken endpoint.

Response Parameters

Parameter Type Mandatory Description
1 ServerDateTime String Yes The server UTC date and time as an ISO 8601 string.
2 TimeStamp Float Yes The server date and time as a Julian date.
3 ExecutionTime Float Yes The number of milliseconds taken to process the request.
4 Result [Object] No* A Result object as described below.
5 Errors [Object] No* An 'Errors' object as described below.
Note

A successful API response will return a Result object with the requested payload or an 'Errors' object detailing the issue that caused the request to fail.


Result Object

Parameter Type Mandatory Description
1 IntervalLimit Object Yes The details of the interval rate limits set on the server.
1 DailyLimit Object Yes The maximum number of data requests per day (midinght to midlight).

IntervalLimit object

Parameter Type Mandatory Description
1 Enabled Boolean Yes Is Interval limit active.
2 Interval String No A character to show the interval that the limit applies to. s=second, m =minute, h=hour and d=day.
3 IntervalCount Integer No A number of intervals that the limit applies to. If IntervalCount = 10 and Interval= "m", this would apply the 'Limit' below every 10 minutes
4 Used Integer No The number of API calls used in the current interval from the "Limit" below. .
5 Limit Integer No The number of API calls allowed in the current interval. .
6 SecondsToReset Integer No The number seconds until the current rate limit is reset. .
7 Message String Yes A text message explaining if the rate limit is active or the time remaining until the current rate limit is reset. .

DailyLimit object

Parameter Type Mandatory Description
1 Enabled Boolean Yes Is Interval limit active.
2 Used Integer No The number of API calls used in the current interval from the "Limit" below. .
3 Limit Integer No The number of API calls allowed in the current interval. .
4 SecondsToReset Integer No The number seconds until the daily rate limit is reset. .
5 Message String Yes A text message explaining if the rate limit is active or the time remaining until the daily rate limit is reset. .
Note

If the 'IntervalLimit' or 'DailyLimit' are disabled, the JSON result will return 'Enabled' as false and the 'Message' will show that the feature is disabled.

Errors Object

Parameter Type Mandatory Description
1 Status Integer Yes HTTP status code.
2 Detail String Yes Description of the status code above.

Possible Status codes in the Errors object

Code Description
400 Missing parameter or unknown argument in request.
401 Invalid or expired session token.
403 The account assigned to this email address is inactive.
405 Method [request] not allowed.
500 Server may be down for maintenance.
Note

This is not an exhaustive list and additional error codes may be returned. The Errors object Detail field will return request specific error information.

Possible HTTP response codes

This endpoint returns 200 for success. You can get HTTP client network errors or server errors from any API request. You should check with your network or IT colleagues in case the issue is a local one. All server generated errors will return an 'Errors' object that will give specific details about the error.
A full list of HTTP codes and their meanings is available here,

Success and fail examples

Sample Request:

https://[server]/RequestNewAPIKey?SessionToken=YOUR_SESSION_TOKEN

Response body on success:

Response body on fail:

Last updated on Apr 20, 2024