> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enrow.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Limiti di frequenza

> Comprendi i limiti di frequenza delle API e come gestirli

L'API Enrow applica limiti di frequenza per garantire un utilizzo equo e mantenere la qualità del servizio. Il limite è lo stesso per tutti gli endpoint e tutti i piani, viene applicato **per chiave API** ed è misurato in **richieste al secondo (RPS)**. Questa pagina illustra i limiti predefiniti, cosa accade quando li superi e come rimanere entro la quota quando aumenti il volume.

## Quali sono i limiti di frequenza predefiniti?

Ogni endpoint POST consente **10 richieste al secondo** per chiave API. Il limite è identico per tutti gli endpoint e tutti i piani:

| Endpoint                    | Limite di frequenza |
| --------------------------- | ------------------- |
| `POST /email/find/single`   | 10 req/s            |
| `POST /email/find/bulk`     | 10 req/s            |
| `POST /email/verify/single` | 10 req/s            |
| `POST /email/verify/bulk`   | 10 req/s            |
| `POST /phone/single`        | 10 req/s            |
| `POST /phone/bulk`          | 10 req/s            |

Gli endpoint GET non sono soggetti a limiti di frequenza, quindi il recupero dei risultati — ad esempio il [risultato di una singola email](/it/api-reference/email-finder/get-single-result) o i [risultati bulk](/it/api-reference/email-finder/get-bulk-results) — non viene conteggiato sulla tua quota.

<Note>
  I limiti di frequenza sono **per chiave API** e misurati in **richieste al secondo** (RPS). Ogni [chiave API](/it/authentication) ha la propria quota indipendente.
</Note>

## Cosa accade quando supero il limite di frequenza?

Quando superi il limite di frequenza, l'API restituisce una risposta `429 Too Many Requests`:

```json theme={null}
{
  "message": "Too Many Requests"
}
```

Il modo consigliato per gestire un `429` è implementare un backoff esponenziale — attendere un ritardo progressivamente più lungo prima di ogni nuovo tentativo, in modo che la chiave API abbia il tempo di rientrare sotto il limite:

```javascript theme={null}
async function requestWithRetry(url, options, maxRetries = 3) {
  for (let attempt = 0; attempt < maxRetries; attempt++) {
    const response = await fetch(url, options);

    if (response.status === 429) {
      const delay = Math.pow(2, attempt) * 1000;
      await new Promise(resolve => setTimeout(resolve, delay));
      continue;
    }

    return response;
  }

  throw new Error('Max retries exceeded');
}
```

Per l'elenco completo dei codici di risposta e su come gestirli, consulta [Codici di stato](/it/status-codes) e [Gestione degli errori](/it/error-handling).

## Come posso evitare di raggiungere il limite di frequenza?

Il modo più efficace per rimanere entro la quota è inviare richieste meno numerose e più grandi e ricevere i risultati tramite webhook anziché tramite polling.

<AccordionGroup>
  <Accordion title="Usa gli endpoint bulk">
    Invece di effettuare 100 richieste singole, effettua 1 richiesta bulk (fino a 5.000 elementi per le email, 3.000 per i telefoni). Una singola richiesta POST bulk conta come 1 richiesta rispetto al tuo limite di frequenza.

    ```javascript theme={null}
    // ❌ 100 requests = 10 seconds at 10 RPS
    for (const contact of contacts) {
      await findEmail(contact);
    }

    // ✅ 1 request
    await findEmailsBulk(contacts);
    ```

    Consulta [Trova email multiple](/it/api-reference/email-finder/find-bulk) e [Verifica email multiple](/it/api-reference/email-verifier/verify-bulk) per iniziare.
  </Accordion>

  <Accordion title="Usa i webhook invece del polling">
    Il polling dell'endpoint GET spreca la quota del tuo limite di frequenza. Usa i [webhook](/it/how-webhooks-work) per ricevere i risultati automaticamente non appena una ricerca o una verifica viene completata.
  </Accordion>

  <Accordion title="Memorizza i risultati nella cache">
    Conserva i risultati per evitare chiamate API ridondanti per lo stesso contatto, il che consente anche di risparmiare [crediti](/it/credits-billing).
  </Accordion>
</AccordionGroup>

## Posso ottenere limiti di frequenza più alti?

Sì. Enrow può aumentare i tuoi RPS caso per caso. Contattaci all'indirizzo [api@enrow.io](mailto:api@enrow.io) indicando il tuo caso d'uso e il volume previsto.

## FAQ

<AccordionGroup>
  <Accordion title="I limiti di frequenza sono condivisi tra gli endpoint?">
    No. Il limite di 10 req/s si applica in modo indipendente a ciascun endpoint POST e la quota viene monitorata **per chiave API** anziché per account.
  </Accordion>

  <Accordion title="Le richieste GET vengono conteggiate sul limite di frequenza?">
    No. Gli endpoint GET non sono soggetti a limiti di frequenza, quindi il polling dei risultati non consuma la tua quota RPS. Detto questo, i webhook restano comunque preferibili al polling frequente.
  </Accordion>

  <Accordion title="Una richiesta bulk conta come una sola richiesta?">
    Sì. Una singola richiesta POST bulk conta come 1 richiesta rispetto al tuo limite di frequenza, anche se può contenere fino a 5.000 elementi per le email o 3.000 per i telefoni.
  </Accordion>

  <Accordion title="Quale codice di stato segnala un errore di limite di frequenza?">
    Una risposta `429 Too Many Requests` con il corpo `{ "message": "Too Many Requests" }`. Riprova con backoff esponenziale. Consulta [Gestione degli errori](/it/error-handling) per i dettagli.
  </Accordion>
</AccordionGroup>

## Prossimi passi

<CardGroup cols={2}>
  <Card title="Trova email multiple" icon="layer-group" href="/it/api-reference/email-finder/find-bulk">
    Esegui fino a 5.000 ricerche di email in un'unica richiesta per risparmiare quota del limite di frequenza.
  </Card>

  <Card title="Webhook" icon="bell" href="/it/how-webhooks-work">
    Ricevi i risultati automaticamente invece di effettuare il polling degli endpoint GET.
  </Card>

  <Card title="Gestione degli errori" icon="triangle-exclamation" href="/it/error-handling">
    Gestisci con eleganza il 429 e le altre risposte nella tua integrazione.
  </Card>

  <Card title="Crediti e fatturazione" icon="coins" href="/it/credits-billing">
    Scopri come vengono consumati i crediti per ciascun endpoint.
  </Card>
</CardGroup>
