Skip to main content

Rate Limits & Quotas

Understand how vfrog.ai manages API usage through rate limits and monthly quotas.

Overview

vfrog.ai implements rate limiting and quota management to ensure fair usage and system stability. Each API key has:

  • Monthly Quota: Maximum number of requests per month
  • Rate Limits: Maximum requests per second/minute

Monthly Quotas

Every API key has a monthly quota that determines how many requests you can make per calendar month.

Default Quotas

  • Starter Plan: 20,000 calls/month
  • Pro Plan: 50,000 calls/month
  • Business Plan: 100,000 calls/month
  • Enterprise Plan: Custom quotas

### Checking Your Quota

View your current usage in the [Console](https://console.vfrog.ai):

1. Navigate to **API Keys**
2. Click on a key to view details
3. See usage statistics:
- Requests used this month
- Remaining requests
- Usage percentage
- Reset date

### Quota Reset

Quotas reset on the first day of each calendar month at 00:00 UTC.

## Rate Limits

In addition to monthly quotas, vfrog.ai enforces rate limits to prevent abuse:

| Endpoint | Rate Limit |
| ---------------------------- | ------------------- |
| `/v1/cv/requests/sync` (Sync) | 10 requests/minute |

### Rate Limit Headers

Every API response includes headers showing your current rate limit status:

X-RateLimit-Limit: 100 X-RateLimit-Remaining: 95 X-RateLimit-Reset: 1640995200


- `X-RateLimit-Limit`: Maximum requests allowed in the time window
- `X-RateLimit-Remaining`: Requests remaining in the current window
- `X-RateLimit-Reset`: Unix timestamp when the limit resets

## Handling Rate Limits

### 429 Too Many Requests

When you exceed a rate limit, the API returns a `429` status code:

```json
{
"error": "Too Many Requests",
"message": "Rate limit exceeded. Try again in 30 seconds.",
"retry_after": 30
}

Best Practices

1. Implement Exponential Backoff

import time
import requests

def make_request_with_retry(url, headers, data, max_retries=3):
for attempt in range(max_retries):
response = requests.post(url, headers=headers, json=data)

if response.status_code == 429:
retry_after = int(response.headers.get('Retry-After', 60))
wait_time = retry_after * (2 ** attempt) # Exponential backoff
print(f"Rate limited. Waiting {wait_time} seconds...")
time.sleep(wait_time)
continue

return response

raise Exception("Max retries exceeded")

2. Batch Requests

For batch processing, make multiple sync requests with appropriate rate limiting:

import time

# Process images with rate limiting
for image in images:
response = requests.post(sync_endpoint, json={"image_url": image})
# Add delay to respect rate limits (10 requests/minute = 6 seconds between requests)
time.sleep(6)

3. Monitor Usage

Regularly check your usage in the console and set up alerts:

import requests

def check_quota(api_key):
response = requests.get(
"https://console.vfrog.ai/api/quota",
headers={"x-api-key": api_key}
)

data = response.json()
usage_percent = (data['used'] / data['limit']) * 100

if usage_percent > 80:
print(f"Warning: {usage_percent}% of quota used")

4. Respect Rate Limits

The sync endpoint (/v1/cv/requests/sync) has a rate limit of 10 requests per minute. Make sure to implement appropriate delays when processing multiple requests.

Quota Exceeded

When you exceed your monthly quota, requests will fail with a 429 status:

{
"error": "Quota Exceeded",
"message": "Monthly quota of 10,000 requests exceeded",
"quota_reset": "2024-02-01T00:00:00Z"
}

Solutions

1. Wait for Reset

Quotas reset on the 1st of each month. You can wait until then to make more requests.

2. Upgrade Your Plan

Increase your quota by upgrading to a higher plan:

  1. Go to Billing
  2. Select a plan with a higher quota
  3. Complete the upgrade

3. Purchase Additional Quota

Buy additional requests for the current month:

  1. Go to Billing
  2. Click Purchase Additional Quota
  3. Select the number of requests
  4. Complete the purchase

Enterprise Plans

Need higher limits? Contact our sales team for custom enterprise plans:

  • Custom monthly quotas
  • Dedicated rate limits
  • Priority support
  • SLA guarantees
  • Volume discounts

📧 Email: hello@vfrog.ai

Next Steps