Usage Limits¶
Parapet Security has usage limits to ensure fair service for all customers.
Types of Limits¶
| Limit Type | What It Controls |
|---|---|
| Monthly Quota | Total alerts per billing period |
| Rate Limit | Alerts per minute |
| Payload Size | Maximum size of each alert |
| Service Tokens | Number of authentication tokens |
Monthly Alert Quota¶
Your plan determines how many alerts you can process per month.
| Plan | Monthly Alerts |
|---|---|
| Starter | 1,000 |
| Professional | 5,000 |
| Team | 20,000 |
How Alerts Are Counted¶
- Each webhook request = 1 alert
- Regardless of payload size
- Test alerts count
- Rejected requests (400 errors) don't count
Viewing Usage¶
- Go to Settings → Account & Billing
- See current usage and limit
- View daily breakdown chart
What Happens at Limit¶
When you reach your monthly quota:
- New alerts return HTTP 429
- Alerts are queued (not lost)
- Queued alerts process when quota resets
- You receive an email notification
Avoiding Limit Issues
- Monitor usage in the dashboard
- Set up usage alerts at 80%
- Filter low-value alerts in your SIEM
- Upgrade before hitting limits
Rate Limits¶
Rate limits prevent alert floods from overwhelming the system.
| Plan | Per Minute | Per Hour | Per Day |
|---|---|---|---|
| Starter | 50 | 500 | 1,000* |
| Professional | 200 | 2,000 | 5,000* |
| Team | 500 | 5,000 | 20,000* |
*Daily limits are your monthly quota, not rate-based.
Rate Limit Response¶
When rate limited, you receive:
HTTP/1.1 429 Too Many Requests
Retry-After: 30
X-RateLimit-Limit: 50
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1706454600
Headers explained:
| Header | Meaning |
|---|---|
Retry-After | Seconds to wait before retrying |
X-RateLimit-Limit | Your per-minute limit |
X-RateLimit-Remaining | Requests left this minute |
X-RateLimit-Reset | Unix timestamp when limit resets |
Handling Rate Limits¶
Implement exponential backoff:
import time
import requests
def send_alert(payload, max_retries=5):
for attempt in range(max_retries):
response = requests.post(webhook_url, json=payload, headers=headers)
if response.status_code != 429:
return response
retry_after = int(response.headers.get('Retry-After', 30))
wait_time = min(retry_after, 2 ** attempt)
time.sleep(wait_time)
raise Exception("Max retries exceeded")
Payload Size Limits¶
| Limit | Value |
|---|---|
| Maximum payload | 1 MB |
| Recommended | < 100 KB |
Large Payload Solutions¶
If your alerts exceed 1 MB:
- Remove raw logs - Reference instead of include
- Compress data - Summarize verbose fields
- Split alerts - Send multiple smaller payloads
Service Token Limits¶
| Plan | Maximum Tokens |
|---|---|
| Starter | 3 |
| Professional | 5 |
| Team | 10 |
Token Best Practices¶
- Use one token per SIEM/environment
- Name tokens descriptively
- Rotate tokens periodically
- Revoke unused tokens
Data Retention¶
| Plan | Retention Period |
|---|---|
| Starter | 30 days |
| Professional | 90 days |
| Team | 180 days |
After retention period:
- Alerts automatically deleted
- Cannot be recovered
- Aggregated stats retained
Notification Limits¶
These limits prevent notification spam:
| Limit | Starter | Professional | Team |
|---|---|---|---|
| Per Hour | 100 | 200 | 500 |
| Per Day | 500 | 1,000 | 5,000 |
Exceeding notification limits:
- Excess alerts skip notification
- Still appear in dashboard
- Notification backlog sent in digest
API Limits¶
For API access (Professional+ plans):
| Limit | Value |
|---|---|
| Requests per minute | 60 |
| Requests per day | 10,000 |
| Concurrent connections | 5 |
Monitoring Your Usage¶
Dashboard Indicators¶
- Usage bar - Shows current vs. limit
- Rate indicator - Alerts per minute
- Warning banner - At 80% usage
Email Alerts¶
Automatic notifications at:
- 50% of monthly quota
- 80% of monthly quota
- 100% of monthly quota
API Check¶
Query usage programmatically:
Response:
{
"period_start": "2026-01-01T00:00:00Z",
"period_end": "2026-02-01T00:00:00Z",
"alerts_used": 342,
"alerts_limit": 500,
"rate_limit_per_minute": 50,
"current_rate": 12
}
Increasing Limits¶
Upgrade Plan¶
Higher plans include higher limits:
| From → To | Quota Increase |
|---|---|
| Starter → Professional | 5x |
| Professional → Team | 4x |
Purchase Overages¶
Professional plan can purchase additional alerts:
- 1,000 alerts: $30
- 5,000 alerts: $100
Need More?¶
For custom requirements beyond Team plan limits, contact sales@parapetsecurity.com.
Fair Use Policy¶
All plans are subject to fair use:
- No automated abuse or DoS
- No sharing tokens across organizations
- No circumventing limits
- Violations may result in suspension
See Terms of Service for details.