// docs / quotas & limits
Cotas e limites
Todos os valores de cota e limite de taxa abaixo são derivados do módulo de direitos no momento do build, então esta página nunca fica desalinhada do que o servidor realmente aplica.
Direitos por plano
| Grátis | Hobby | Pro | Ilimitado | |
|---|---|---|---|---|
| Varreduras / mês | 3 | 50 | 200 | Plano Unlimited¹ |
| Projetos (domínios verificados) | 1 | 1 | 5 | 20 |
| Tokens de API | 0 | 1 | 5 | 20 |
| Endpoints de webhook | 0 | 1 | 5 | 20 |
| Sondas ativas | não | sim | sim | sim |
| Varreduras de repo GitHub | não | não | sim | sim |
| Novas varreduras agendadas | não | não | cadência ≥3h | ≥6h cadence |
| Detecção de ameaças em tempo real | não | não | não | sim |
| Relatórios compartilháveis | não | não | sim | sim |
| Retenção | 7 dias | 30 dias | 90 dias | 365 dias |
| Assentos da equipe | 1 | 1 | 1 | 5 |
| Suporte | padrão | padrão | prioritário | dedicado |
¹ 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.
Limites de taxa da API
Cada requisição /api/v1/* e /api/mcp é indexada por um hash do token bearer e passa por duas janelas:
- Burst: 10 requisições por segundo.
- Estável: 60 requisições por minuto.
- 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.
Em 429, a resposta inclui:
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
}A janela que disparou é nomeada na mensagem (burst (10/s) vs steady (60/min)) para que o backoff do cliente possa adaptar.
Limite de taxa de varreduras do plano Free (por 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 de cadastro (por IP/24)
5 cadastros bem-sucedidos por IP/24 a cada 24 horas, para evitar criação automatizada de contas no plano Free. Callbacks limitados redirecionam para /sign-in?error=rate_limited.
Retenção
Varreduras + findings são purgados automaticamente conforme a tabela acima. Varreduras anônimas únicas expiram 24h após a criação. Audit logs são retidos por 18 meses. Snapshots do monitor são podados para os últimos 7 dias mais a baseline mais recente por (domínio, sinal). Alertas descartados são purgados após 90 dias. Toda a retenção é aplicada diariamente por /api/cron/retention-cleanup.
