Rate Limits and Quotas
API rate limits are the number of requests that you can make to the API within a specific time frame. The rate limits are set to ensure that the API is available to all users and to prevent abuse. If you exceed the rate limit, you will receive an error response with the status code 429 Too Many Requests.
TIP
The rate limits for the APITube News API are based on the plan you are subscribed to. You can view the rate limits for each plan below.
Rate limits
| Plan | Rate limit |
|---|---|
| Free | 30 requests per 30 minutes and 1 page of results |
| Basic | 1500 requests per 15 minutes |
| Professional | 3000 requests per 15 minutes |
| Corporate | 5000 requests per 15 minutes |
Fact Check
The Fact Check endpoint (/v1/fact-check) has its own, stricter limit of 10 requests per minute — separate from the plan rate limit above — because every request runs language-model inference. It is also not available on the Free plan. Exceeding it returns a 429 error with code ER0203.
SSE Stream Connections
Each plan has a limit on the number of concurrent SSE stream connections:
| Plan | Max SSE Connections |
|---|---|
| Free | 1 |
| Basic | 2 |
| Professional | 10 |
| Corporate | 50 |
If you exceed the limit, the API will return a 429 error with code ER0360.
Monitoring Rate Limits
APITube News API uses HTTP headers to provide information about your current rate limit status. The following headers are included in every API response:
| Header | Description |
|---|---|
X-RateLimit-Limit | The maximum number of requests you can make in the current time window |
X-RateLimit-Remaining | The number of requests remaining in the current time window |
X-RateLimit-Reset | The number of seconds remaining until the rate limit resets |
Example:
X-RateLimit-Limit: 1500
X-RateLimit-Remaining: 1499
X-RateLimit-Reset: 32Pay-as-you-go spending limit
If you use pay-as-you-go billing, you can set an optional monthly spending limit on your account from the dashboard. It caps how much of your prepaid balance can be spent within a calendar month (UTC) — useful to protect your balance from an unexpected usage spike.
When a limit is configured, every response includes the remaining budget for the current month:
| Header | Description |
|---|---|
X-Budget-Remaining | Remaining monthly pay-as-you-go budget, in cents. Present only when a limit is set. |
Example (50000 cents = $500 left this month):
X-Budget-Remaining: 50000Once the monthly limit is reached, requests that would be billed to your balance are rejected with 402 and error code ER0177 until the limit resets at the start of the next month, or you raise/remove it in the dashboard. Requests covered by your plan quota are not affected.