// docs / quotas & limits
سهمیهها و محدودیتها
هر مقدار quota و rate-limit زیر هنگام build از ماژول entitlements گرفته میشود، پس این صفحه نمیتواند از چیزی که سرور واقعا enforce میکند عقب بیفتد.
حقهای هر پلن
| رایگان | تفریحی | حرفهای | Unlimited | |
|---|---|---|---|---|
| اسکنها / ماه | 3 | 50 | 200 | طرح Unlimited¹ |
| Projectها (دامنههای verified) | 1 | 1 | 5 | 20 |
| API tokenها | 0 | 1 | 5 | 20 |
| Webhook endpoints | 0 | 1 | 5 | 20 |
| پروبهای active | خیر | بله | بله | بله |
| اسکنهای مخزن GitHub | خیر | خیر | بله | بله |
| Re-scanهای زمانبندیشده | خیر | خیر | cadence ≥3h | ≥6h cadence |
| تشخیص زنده تهدید | خیر | خیر | خیر | بله |
| Sharable reports | خیر | خیر | بله | بله |
| Retention داده | 7 روز | 30 روز | 90 روز | 365 روز |
| Team seatها | 1 | 1 | 1 | 5 |
| پشتیبانی | استاندارد | استاندارد | اولویتی | اختصاصی |
¹ The Unlimited plan's scan quota is subject to fair use — see Terms. ² The project cap defaults to 20 active-monitoring domains at ≥6h cadence. Contact support@fixvibe.app to raise it in exchange for a longer scheduled cadence.
Rate limitهای API
هر request به /api/v1/* و /api/mcp روی hash مربوط به bearer token keyed میشود و از دو window عبور میکند:
- Burst: ۱۰ request در ثانیه.
- Steady: ۶۰ request در دقیقه.
- Per signed-in user: 30 scan submissions per 10 minutes — a soft cap above the per-plan monthly quota that absorbs bursts without exhausting the daily budget.
روی 429، response شامل اینهاست:
HTTP/1.1 429 Too Many Requests
content-type: application/json
retry-after: 47
x-ratelimit-limit: 60
x-ratelimit-remaining: 0
x-ratelimit-reset: 1715116200
{
"error": "rate_limited",
"message": "Token rate limit exceeded — steady (60/min). Retry in 47s.",
"retry_after_seconds": 47
}windowی که trip کرده در message نامگذاری میشود (burst (10/s) در برابر steady (60/min)) تا backoff client بتواند adapt شود.
محدودیت سرعت اسکن طرح Free (به ازای IP/24)
On top of the per-org 3-scans-per-month cap, Free plan users face an additional per-IP/24 rate limit: 3 scans per rolling 24 hours per IP /24 block. The same limiter covers anonymous instant scans, which prevents farming Free quota through throwaway accounts on one IP. Requests exceeding the limit return HTTP 429 Too Many Requests with a Retry-After header.
Throttle ثبتنام (بهازای IP/24)
۵ ثبتنام موفق به ازای IP/24 در هر ۲۴ ساعت، برای جلوگیری از ایجاد خودکار حسابهای طرح Free. Callbackهای محدودشده به /sign-in?error=rate_limited هدایت میشوند.
Retention داده
Scanها + findingها طبق table بالا بهصورت خودکار purge میشوند. اسکنهای anonymous one-shot، 24h بعد از creation منقضی میشوند. Audit logها ۱۸ ماه نگه داشته میشوند. Monitor snapshotها به ۷ روز آخر بهاضافه آخرین baseline برای هر (domain, signal) prune میشوند. Alertهای dismissed بعد از ۹۰ روز purge میشوند. همه retentionها روزانه با /api/cron/retention-cleanup enforce میشوند.
