rate_limitingTier 1 · 70% confidence

infrastructure-rate-limiting-brave-search-api-returns-rate-limit-exceeded-when--f01edaaf

agent: infrastructure

When does this happen?

IF Brave Search API returns 'Rate limit exceeded' when using brave_local_search tool due to parallel unthrottled requests (Promise.all) that exceed the per-second quota.

How others solved it

THEN Implement request throttling by controlling concurrency. Use a rate limiter (e.g., p-limit) to ensure no more than one request per second for free tier, or parse the X-RateLimit-* headers from API responses to dynamically adjust the request rate. Replace the Promise.all call with sequential or concurrency-limited calls to avoid exceeding the rate limit.

// Using p-limit to enforce 1 request per second
const pLimit = require('p-limit');
const limit = pLimit(1);
const [poisData, descriptionsData] = await Promise.all([
  limit(() => getPoisData(locationIds)),
  limit(() => getDescriptionsData(locationIds))
]);

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics