// docs / quotas & limits
Quote e limiti
Ogni valore di quota e rate limit qui sotto deriva dal modulo degli entitlement al momento della build, quindi questa pagina non può mai divergere da ciò che il server applica davvero.
Diritti per piano
| Gratuito | Hobby | Pro | Illimitato | |
|---|---|---|---|---|
| Scansioni / mese | 3 | 50 | 200 | Piano Unlimited¹ |
| Progetti (domini verificati) | 1 | 1 | 5 | 20 |
| Token API | 0 | 1 | 5 | 20 |
| Owner-depth scans | no | sì | sì | sì |
| Scansioni repo GitHub | no | no | sì | sì |
| Ri-scansioni pianificate | no | no | cadenza ≥3 h | cadenza ≥1 h |
| Rilevamento minacce in tempo reale | no | no | no | sì |
| Conservazione | 7 giorni | 30 giorni | 90 giorni | 365 giorni |
| Posti team | 1 | 1 | 1 | 5 |
| Supporto | standard | standard | prioritario | dedicato |
¹ La quota di scansioni del piano Unlimited è soggetta a fair use — vedi i Termini. ² Il limite predefinito è di 20 domini in monitoraggio attivo a cadenza ≥1h. Contatta support@fixweb.app per aumentarlo in cambio di una cadenza programmata più lunga.
Rate limit API
Ogni richiesta /api/v1/* e /api/mcp è indicizzata su un hash del bearer token e passa attraverso due finestre:
- Burst: 10 richieste al secondo.
- Steady: 60 richieste al minuto.
Su 429, la risposta include:
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
}La finestra che ha fatto scattare il limite è indicata nel messaggio (burst (10/s) vs steady (60/min)) così il backoff di un client può adattarsi.
Limite di velocità delle scansioni del piano Free (per IP/24)
Oltre al limite di 3 scansioni al mese per organizzazione, gli utenti del piano Free hanno un limite aggiuntivo per IP/24: 3 scansioni all'ora, 100 al giorno. Lo stesso limiter copre le scansioni istantanee anonime, impedendo di consumare la quota Free attraverso account usa-e-getta. Le richieste che superano uno qualsiasi dei limiti restituiscono HTTP 429 Too Many Requests con un header Retry-After.
Throttle registrazione (per IP/24)
5 registrazioni riuscite per IP/24 ogni 24 ore, per impedire la creazione automatizzata di account sul piano Free. I callback limitati vengono reindirizzati a /sign-in?error=rate_limited.
Conservazione
Scansioni + segnalazioni vengono eliminate automaticamente secondo la tabella sopra. Le scansioni anonime una tantum scadono 24 h dopo la creazione. Gli audit log restano per 18 mesi. Gli snapshot di monitor vengono potati agli ultimi 7 giorni più la baseline più recente per (dominio, segnale). Gli alert ignorati vengono eliminati dopo 90 giorni. Tutta la conservazione è applicata ogni giorno da /api/cron/retention-cleanup.
