Skip to main content

Platform Limits

To ensure stability and fair usage for all users, the MetService API Platform enforces limits on the number of requests you can make in a given period. This page outlines those limits and provides guidance on how to handle them in your application.

Rate Limits

Rate limiting is enforced based on your API key. If you exceed these limits, your request will be rejected with an HTTP 429 Too Many Requests error response.

The current limits are:

  • Rate Limit: A maximum of 40 requests per second. This is a steady-state rate limit to manage short-term traffic.
  • Burst Limit: A maximum of 4 concurrent requests. This prevents any single client from overwhelming the service with parallel requests.
  • Daily Quota: A total of 144,000 requests per day. This quota resets daily at 00:00 UTC.

Handling Rate Limit Errors

When you exceed a rate limit, the API will respond with a 429 status code and a structured error body, as defined in our Error Handling guide.

The Retry-After Header

The 429 response will include a Retry-After header. This header contains an integer specifying the number of seconds you should wait before making another request. You should always respect this header.

Example 429 Response

Here is an example of the error you will receive:

{  
"type": "/error-handling/rate-limit-exceeded",
"title": "Rate Limit Exceeded",
"status": 429,
"detail": "You have exceeded the request rate limit. Please try again later."
}

Best Practices

To build a resilient application, you should anticipate and handle rate limit errors gracefully. We recommend:

  1. Implement Concurrency Control: Limit parallel requests to stay under the burst limit of 4 concurrent requests
  2. Use a Request Queue: Buffer requests that would exceed the burst limit
  3. Implement Retry with Backoff: When you receive a 429 error:
    • Check for the Retry-After header and wait for the specified duration
    • If the header is not present, wait for an initial period (e.g., 1 second)
    • Retry the request
    • If the request fails again, double the waiting period before the next retry, and repeat.

Other Limits

Please note that API usage is also governed by MetService's Terms & Conditions.

Performance & Reliability

In addition to rate limits, your API key and subscription include the following performance guarantees.

  • Latency: We aim for a typical response time of under 300ms for the majority of requests.
  • Uptime: Our service is designed to be highly available, with an uptime of 99.9%. This means you can expect a maximum of around 43 minutes of unscheduled downtime per month.

Nowcast API

We're still working through pricing structure and whether it'll be dependent on call limits. Right now we're planning to price on locations and possibly parameters. Discussion with needed but generous call limit will be provided, well beyond the number of calls for time-interval X locations