Rate Limits
Trasys Public API rate limits (100 requests/minute per key), the X-RateLimit response headers, 429 handling, and best practices for high-volume integrations.
Limits
| Limit | Value |
|---|---|
| Requests per minute (per API key) | 100 |
| Max results per list request | 500 |
| TQL result row cap | 10,000 |
| TQL query max size | 50 KB |
Limits are tracked per API key using an in-memory sliding window. Each API server instance maintains its own counter, so actual effective limits may be slightly higher in multi-instance deployments.
Response headers
Every API response includes these headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 94
X-RateLimit-Reset: 1750000060X-RateLimit-Reset is a Unix timestamp (seconds) indicating when the current window resets.
429 Too Many Requests
When you exceed the limit, the API returns:
{ "error": "Too many requests" }with status 429. Back off for at least 60 seconds before retrying.
Best practices
- Cache list results — most data (traces, logs) doesn't change retroactively. Cache paginated responses for at least 30 seconds.
- Use TQL for aggregations — a single TQL query that returns aggregated rows is far more efficient than fetching 500 raw traces to compute a count client-side.
- Prefer webhooks for real-time — if you need to react to incidents as they happen, webhooks are more efficient than polling the incidents endpoint.
If 100 requests/min is insufficient for your use case, contact support to discuss higher limits.
Pagination & Filtering
Standard limit/page pagination, time_range and from/to filters, and sort_by/sort_order parameters shared across most Trasys Public API list endpoints.
Dashboards
API endpoints for fetching aggregate statistics that power the logs, errors, incidents, alerts, and AI-insight dashboard widgets, filterable by time range.

