Niente registrazione, niente chiavi, niente OAuth
A differenza della maggior parte delle API, non devi:
- Creare un account
- Generare una chiave API
- Inviare un header
Authorization - Firmare le richieste con HMAC
- Rinnovare token OAuth
- Pagare un piano
Basta inviare la tua richiesta HTTP a https://cleverutils.com/api/v1/* e funziona.
Come viene allora prevenuto l'abuso?
Tracciamo l'utilizzo per indirizzo IP. Ogni IP ottiene una generosa quota giornaliera e un piccolo intervallo tra le richieste per prevenire i flood. Consulta i rate limits per tutti i dettagli.
Se un singolo IP effettua troppe richieste, viene temporaneamente limitato (HTTP 429). Abusi ripetuti portano a un ban di 24 ore (HTTP 403).
Il mio IP viene memorizzato?
Sì — ma solo come hash SHA-256 salato, mai in chiaro. Lo usiamo per due scopi:
- Rate limiting — l'hash è la chiave dei nostri file di contatore per IP in
/tmp/cleverutils-api-ratelimit/. Questi file vengono eliminati automaticamente dopo 25 ore. - Logging — i primi 16 caratteri dell'hash vengono scritti nei nostri log delle richieste (in
/tmp/cleverutils-api-logs/) per debug e rilevamento di abusi. I log vengono ruotati dopo 30 giorni.
Non memorizziamo mai gli IP in chiaro. Non registriamo mai i corpi delle richieste. Non condividiamo mai i dati con terze parti.
Sessioni e cookie
Per motivi storici, l'API potrebbe impostare un cookie PHPSESSID nelle risposte. Puoi ignorarlo. L'API non dipende da sessioni o cookie per l'autenticazione o il rate limiting — è puramente basata su IP.
La maggior parte dei client HTTP (cURL senza -c, Python requests senza Session, Go http.DefaultClient) non mantiene comunque i cookie. Puoi ignorare l'header in tutta sicurezza.
E CORS?
L'API risponde con Access-Control-Allow-Origin: * su ogni endpoint, quindi puoi chiamarla direttamente da un'app JavaScript nel browser su qualsiasi dominio. Le richieste preflight (OPTIONS) vengono gestite automaticamente.
Futuro: chiavi API opzionali
In futuro potremmo introdurre chiavi API opzionali per gli utenti che necessitano di quote più elevate o desiderano analisi per chiave. Quando ciò accadrà:
- Il livello anonimo gratuito rimarrà gratuito e senza chiave.
- Le chiavi saranno inviate tramite l'header di richiesta
X-API-Key(nonAuthorization: Bearer). - Questa pagina sarà aggiornata con istruzioni complete.
Fino ad allora: invia semplicemente richieste HTTP e sei autenticato.