// docs / quotas & limits
Kuota & had
Setiap nilai kuota dan had kadar di bawah datang daripada modul entitlement pada masa build, jadi halaman ini tidak boleh tersasar daripada apa yang sebenarnya dikuatkuasakan server.
Entitlement mengikut tier
| Percuma | Hobi | Pro | Unlimited | |
|---|---|---|---|---|
| Imbasan / bulan | 3 | 50 | 200 | Pelan UnlimitedΒΉ |
| Projek (domain disahkan) | 1 | 1 | 5 | 20 |
| Token API | 0 | 1 | 5 | 20 |
| Webhook endpoints | 0 | 1 | 5 | 20 |
| Probe aktif | tidak | ya | ya | ya |
| Imbasan repo GitHub | tidak | tidak | ya | ya |
| Imbasan semula berjadual | tidak | tidak | cadence β₯3j | β₯6h cadence |
| Pengesanan ancaman langsung | tidak | tidak | tidak | ya |
| Sharable reports | tidak | tidak | ya | ya |
| Retensi | 7 hari | 30 hari | 90 hari | 365 hari |
| Seat pasukan | 1 | 1 | 1 | 5 |
| Sokongan | standard | standard | keutamaan | khusus |
ΒΉ 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.
Had kadar API
Setiap request /api/v1/* dan /api/mcp dikunci pada hash token bearer dan melalui dua window:
- Burst: 10 request sesaat.
- Steady: 60 request seminit.
- 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.
Pada 429, respons menyertakan:
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 yang tercetus dinamakan dalam mesej (burst (10/s) vs steady (60/min)) supaya backoff klien boleh menyesuaikan diri.
Had kadar imbasan pelan Free (setiap 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 pendaftaran (per IP/24)
5 pendaftaran berjaya setiap IP/24 setiap 24 jam, untuk mengelakkan penciptaan akaun pelan Free secara automatik. Callback yang dihadkan dialihkan ke /sign-in?error=rate_limited.
Retensi
Imbasan + dapatan dipadam automatik mengikut jadual di atas. Imbasan sekali jalan anonim tamat tempoh 24j selepas dicipta. Audit log disimpan selama 18 bulan. Snapshot monitor dipangkas kepada 7 hari terakhir ditambah baseline terkini per (domain, isyarat). Alert yang di-dismiss dipadam selepas 90 hari. Semua retensi dikuatkuasakan setiap hari oleh /api/cron/retention-cleanup.
