Limites de debit
Les limites de debit protegent l'API contre les abus et assurent une utilisation equitable pour tous les utilisateurs.
Limites par plan
| Plan | Requetes/mois | Debit burst (req/min) | |---|---|---| | Gratuit | 100 | 10 | | Starter | 5 000 | 30 | | Growth | 25 000 | 60 | | Scale | 100 000 | 120 |
En-tetes de limite de debit
Chaque reponse API inclut les informations de limite de debit :
| En-tete | Description |
|---|---|
| X-RateLimit-Limit | Nombre maximum de requetes par minute pour votre plan |
| X-RateLimit-Remaining | Requetes restantes dans la fenetre actuelle |
| X-RateLimit-Reset | Timestamp Unix de la reinitialisation |
Quand la limite est atteinte
Vous recevrez une reponse 429 Too Many Requests :
{
"success": false,
"request_id": "req_abc123",
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Please wait before making more requests."
}
}
Gerer les limites de debit
JavaScript
async function classifyWithRetry(email, apiKey, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
const res = await fetch(
`https://emailkind.com/v1/classify?email=${encodeURIComponent(email)}`,
{ headers: { Authorization: `Bearer ${apiKey}` } }
);
if (res.status !== 429) return res.json();
const wait = Math.pow(2, attempt) * 1000;
await new Promise((r) => setTimeout(r, wait));
}
throw new Error("Limite de debit depassee apres les tentatives");
}
Python
import time
import requests
def classify_with_retry(email, api_key, max_retries=3):
for attempt in range(max_retries):
response = requests.get(
"https://emailkind.com/v1/classify",
params={"email": email},
headers={"Authorization": f"Bearer {api_key}"}
)
if response.status_code != 429:
return response.json()
wait = 2 ** attempt
time.sleep(wait)
raise Exception("Limite de debit depassee apres les tentatives")
PHP
function classifyWithRetry(string $email, string $apiKey, int $maxRetries = 3): array {
for ($attempt = 0; $attempt < $maxRetries; $attempt++) {
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => "https://emailkind.com/v1/classify?" . http_build_query(["email" => $email]),
CURLOPT_HTTPHEADER => ["Authorization: Bearer $apiKey"],
CURLOPT_RETURNTRANSFER => true,
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status !== 429) {
return json_decode($body, true);
}
sleep(pow(2, $attempt));
}
throw new \Exception("Limite de debit depassee apres les tentatives");
}
Quota mensuel
Lorsque votre quota mensuel est atteint, toutes les requetes retournent 429 jusqu'au prochain cycle de facturation. Vous pouvez :
- Upgrader votre plan pour plus de requetes
- Attendre le mois suivant pour la reinitialisation du quota
- Surveiller votre utilisation dans le Tableau de bord pour eviter les surprises