Geen registratie, geen sleutels, geen OAuth
In tegenstelling tot de meeste API's hoef je niet:
- Een account aan te maken
- Een API-sleutel te genereren
- Een
Authorization-header te sturen - Verzoeken met HMAC te ondertekenen
- OAuth-tokens te vernieuwen
- Voor een abonnement te betalen
Je stuurt gewoon je HTTP-verzoek naar https://cleverutils.com/api/v1/* en het werkt.
Hoe wordt misbruik dan voorkomen?
We volgen het gebruik op IP-adres. Elk IP krijgt een royale dagelijkse quota en een korte cooldown per verzoek om floods te voorkomen. Zie rate limits voor alle details.
Als één IP te veel verzoeken doet, wordt het tijdelijk afgeknepen (HTTP 429). Herhaald misbruik leidt tot een ban van 24 uur (HTTP 403).
Wordt mijn IP opgeslagen?
Ja — maar alleen als een gesalte SHA-256-hash, nooit in leesbare tekst. We gebruiken het voor twee dingen:
- Rate limiting — de hash is de sleutel voor onze tellerbestanden per IP in
/tmp/cleverutils-api-ratelimit/. Deze bestanden worden na 25 uur automatisch verwijderd. - Logging — de eerste 16 tekens van de hash worden geschreven in onze verzoeklogs (in
/tmp/cleverutils-api-logs/) voor debugging en misbruikdetectie. Logs worden na 30 dagen geroteerd.
We slaan IP's nooit in leesbare tekst op. We loggen nooit de inhoud van verzoeken. We delen nooit gegevens met derden.
Sessies en cookies
Om historische redenen kan de API een PHPSESSID-cookie instellen in reacties. Je kunt dit negeren. De API is voor authenticatie of rate limiting niet afhankelijk van sessies of cookies — het werkt puur op basis van IP.
De meeste HTTP-clients (cURL zonder -c, Python requests zonder Session, Go http.DefaultClient) bewaren cookies toch niet. Je kunt de header veilig negeren.
En hoe zit het met CORS?
De API reageert op elk endpoint met Access-Control-Allow-Origin: *, dus je kunt hem direct aanroepen vanuit een JavaScript-app in de browser op elk domein. Preflight-verzoeken (OPTIONS) worden automatisch afgehandeld.
Toekomst: optionele API-sleutels
Mogelijk introduceren we later optionele API-sleutels voor gebruikers die hogere quota nodig hebben of analyses per sleutel willen. Wanneer dat gebeurt:
- De gratis anonieme laag blijft gratis en sleutelvrij.
- Sleutels worden verzonden via de request-header
X-API-Key(nietAuthorization: Bearer). - Deze pagina wordt bijgewerkt met volledige instructies.
Tot die tijd: stuur gewoon HTTP-verzoeken en je bent geauthenticeerd.