Skip to main content
Troubleshooting

Rate Limit Exceeded

How to handle and avoid rate limit errors.

Understanding Rate Limits

Authenticated requests are limited per API key and per account plan. A shared platform throttle also protects overall service stability.

  • Free: 10 requests/minute
  • Starter: 60 requests/minute
  • Professional: 300 requests/minute
  • Business: 1,000 requests/minute
  • Enterprise: 5,000 requests/minute

Implementing Backoff

When you receive a 429 error, implement exponential backoff:

async function verifyWithBackoff(email, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      return await verify(email);
    } catch (err) {
      if (err.status === 429) {
        const wait = Math.pow(2, i) * 1000; // 1s, 2s, 4s
        await sleep(wait);
      } else {
        throw err;
      }
    }
  }
}

Best Practices

  • Use batch endpoints instead of single requests
  • Back off with exponential, jittered delays on a 429
  • Queue requests and process at a sustainable rate
  • Cache results to avoid re-verifying same emails

Need Higher Limits?

Upgrade your plan or contact sales for custom limits.

Was this article helpful?

Saved on this device only. To reach us, email support@kawaa.com.

Still need help?

Can't find what you're looking for? Our support team is here to assist you.

Contact Support