Hi guys, I need help, trying to run a long list which will check HubSpot via APIs for deals or companies matching a name, however I am getting “too many requests” from HubSpot. I am using n8n. I have tried rate limiting but it cant be lower than 5 requests every 1 second. How can I reduce the rate limiting please. I've spent hours trying to resolve this
I understand how frustrating this rate limiting issue must be after spending hours on it.
In Clay's HTTP API settings, you can configure rate limiting using Request Limit and Duration parameters. The Request Limit sets how many requests are allowed in a timeframe, and Duration sets the timeframe in milliseconds (1-900,000 ms). However, the rate limit must average at least 5 requests per second to work properly.
Since you mentioned you can't go lower than 5 requests per second, this might be hitting Clay's minimum threshold.
Are you currently using Clay's built-in HubSpot integration instead of the HTTP API? The native HubSpot integration might handle rate limiting more efficiently for your use case.
Yes it might handle but clay is not very flexible with the integration and can't do the things I want
Got it - the native integration has limitations for your specific use case.
For the HTTP API rate limiting, you can try setting a higher duration with fewer requests. For example: Request Limit: 3, Duration: 1000ms (3 requests per second) or Request Limit: 1, Duration: 500ms (2 requests per second). [1]
The key is adjusting both the Request Limit and Duration fields together to stay under HubSpot's thresholds while meeting Clay's minimum average of 5 requests per second over time.
What specific Request Limit and Duration values have you tried so far?
Those values don't work
Since the lower rate limit values aren't working, the issue might be that Clay's minimum average requirement of 5 requests per second is conflicting with HubSpot's stricter limits.
You could try using Clay's conditional runs feature to reduce the total number of API calls - this lets you set formulas so the HTTP API only runs when specific conditions are met, preventing unnecessary requests. [1]
What error message are you seeing exactly when those rate limit settings fail?
Too many requests
Since you're still hitting HubSpot's rate limits even with conditional runs, let's try a different approach. You can use Clay's status/flag columns to batch your requests more effectively. [1]
Create a status column (like "Processing Status") and set your HTTP API to only run when the status is "Ready". Then manually update batches of rows to "Ready" in smaller groups - this gives you complete control over timing and volume.
Can you copy and paste the exact JSON you're sending in your HTTP API body? This will help me see if there's anything in the request structure that might be causing additional rate limit issues.
If you still need help resolving the rate limiting issue with your API requests, I’m here to assist. Would you like to provide the exact JSON you’re sending so we can troubleshoot further?
