Rate Limits
The impact.com partner API limits how many calls a client can make in a given hour to help protect our system against traffic spikes that could disable it. If the number of requests you are trying to make exceeds your limit, your requests will be throttled and we will respond with a 429 - Too Many Requests response along with the following headers:
X-RateLimit-Limit-hour
Maximum number of requests allowed for the resource within the given time period.
X-RateLimit-Remaining-hour
Number of requests left as of the current request within the given time period.
RateLimit-Reset
Number of seconds until the limit is reset. This is in-line with IETF standards
Retry-After
Will only be present on rate limited responses, and indicates how long the client will be rate limited for.
Different endpoint groups have different default rate limits.
Hourly rate limits
Performance detail
Any resource that references event level performance data, including /Actions, /Clicks, and some /Reports.
500 requests
Performance aggregate
Any /Reports resource that references aggregated performance data.
250 requests
Product Search
Any resource that enables partners to query brand’s product, including /Catalogs/ItemSearch and /Catalogs/*/Items.
3,000 requests
Other
Any resource not referenced above.
1,000 requests
Daily rate limits
Report Export
Any /ReportExport requests.
100 requests
Click Export
Any /ClickExport requests.
10 requests
Rate limits are subject to change at any given time based on the needs of the system. It is best practice for applications to monitor their current rate limit status and dynamically throttle requests if necessary.
Example rate limit headers
HTTP/1.1 200 OK
Content-Type: application/json
X-RateLimit-Limit-hour: 100
X-RateLimit-Remaining-hour: 100
RateLimit-Reset: 700HTTP/1.1 429 Too Many Requests
Content-Type: application/json
X-RateLimit-Limit-hour: 100
X-RateLimit-Remaining-hour: 0
RateLimit-Reset: 700
Retry-After: 700