Rate limits
API requests are rate limited to ensure fair usage and platform stability. Limits are applied per user.Request rate limits
Pentest Robots have no rate limit when stopping scans via the API.
Rate limit headers
You can inspect your current rate limit status by checking the response headers on any request:When rate limited
When you exceed the rate limit, you’ll receive a429 Too Many Requests response with additional headers:
Best Practice: Implement exponential backoff:
Error response format
Error responses include astatus code and message, with optional details:
Error codes
Common errors
403 Forbidden
403 Forbidden
Cause: Your API key lacks permission for this actionSolutions:
- Check your subscription plan includes the requested feature
- Verify you have access to the workspace or resource
- For target deletion: ensure your plan allows API target deletion
404 Not Found
404 Not Found
Cause: Resource doesn’t exist or you don’t have accessSolutions:
- Verify the resource ID is correct
- Check the resource belongs to your account or a workspace you have access to
- For scans/targets: ensure they haven’t been deleted
406 Not Acceptable
406 Not Acceptable
Cause: Requested output format not supportedExample: Requesting JSON output for a tool that only provides raw outputSolution: Use a different output format or download the PDF report instead
409 Conflict
409 Conflict
Cause: Operation conflicts with current resource stateExamples:
- Deleting a scan that is still running
- Creating a workspace with a name that already exists
- Deleting your current active workspace
429 Too Many Requests
429 Too Many Requests
Cause: Rate limit exceededSolution: Wait for the duration specified in the
Retry-After header before making more requestsBest practices
- Handle errors gracefully: Implement proper error handling for all API calls
- Respect rate limits: Monitor
X-RateLimit-Remainingand slow down before hitting limits - Use exponential backoff: When retrying failed requests, increase wait time between attempts
- Log errors: Keep records of errors for debugging and monitoring