Understanding the ZenRows® Universal Scraper API error codes is crucial for troubleshooting and optimizing your interactions with ZenRows. Below are common errors you may encounter, along with explanations and recommended actions.

Each error code corresponds to specific conditions encountered during the Universal Scraper API usage, from authentication problems to request handling and server responses.

400 Bad Request

REQS001 Requests To This Domain Are Forbidden

Problem: Requests to this URL are forbidden.

Solution:

  1. Check our target sites’ access restrictions and user behavior guidelines to see if the domain is explicitly blocked
  2. Try using a different domain that provides similar data
  3. If you need to scrape this specific domain for a legitimate business purpose, contact our support team to discuss potential options

REQS002 Request Requirements Unsatisfied

Problem: The requested URL domain needs JavaScript rendering and/or Premium Proxies due to its high-level security defenses.

Solution:

  1. Read the error message to understand the specific requirements for the domain
  2. Add js_render=true and/or premium_proxy=true parameters to your request, depending on the domain’s requirements

REQS004 Invalid Params Provided

Problem: Some parameters or even the URL are invalid or not properly encoded.

Solution:

  1. Read the error message to understand the specific issue
  2. Ensure your URL is properly URL-encoded (check our guide on encoding URLs) or the http you use is doing it for you
  3. Validate that all parameter values match the expected types (boolean, string, etc.)
  4. Remove any invalid or unsupported parameters from your request
  5. Check that you are not sending query parameters for the target page as parameters for the API call

RESP004 CSS Extractor Parameter Is Not Valid

Problem: The css_extractor parameter sent in your request is not valid.

Solution:

  1. Check your CSS selector syntax for errors (like missing brackets or quotes)
  2. Simplify complex selectors that might be causing issues
  3. Test your CSS selector on the actual page using browser developer tools first (document.querySelector('.your-selector'))
  4. If extracting multiple elements, ensure your JSON structure follows the correct format:
css_extractor={
  "title": "h1.product-title",
  "price": "span.product-price"
}

REQS006 Invalid CAPTCHA Solver Key

Problem: The configured CAPTCHA solver integration API key is invalid.

Solution:

  1. Verify your CAPTCHA solver API key in your account integrations page
  2. Check that your CAPTCHA solver account has sufficient funds
  3. Confirm the CAPTCHA solver service is operational through their status page
  4. Try re-generating a new API key from your CAPTCHA solver service

Problem: The target returned an error on the site’s config or certificate, not an error ZenRows can solve or bypass.

Solution:

  1. Check if the target website is accessible from your browser
  2. If you’re using geolocation, try a different country as the site might only be available in specific regions
  3. Wait a few minutes and retry as the issue might be temporary
  4. For SSL certificate issues, try accessing the HTTP version of the site if available

401 Unauthorized

AUTH001 API Key Missing

Problem: No apikey information was sent in your request.

Solution:

  1. Add the apikey parameter to your request
  2. Check your code to ensure the apikey is being included in every request
  3. For API clients like Axios or Requests, set up default parameters to include your API key automatically
  4. Verify the API endpoint structure - the key should be sent as a query parameter to the API endpoint

AUTH002 Invalid API Key

Problem: The apikey sent does not match the expected format.

Solution:

  1. Copy your API key directly from the ZenRows Builder
  2. Ensure no extra spaces or characters were accidentally included
  3. Check for any string formatting or concatenation issues in your code
  4. If using environment variables, verify they’re loading correctly

AUTH003 API Key Not Found

Problem: The apikey sent in your request is not valid.

Solution:

  1. Verify you’re using the correct API key from your ZenRows Builder
  2. Check if your API key has been revoked or regenerated recently
  3. Ensure your account is active and working, you can perform a request from the Builder itself
  4. For team accounts, confirm with your administrator that the key is still valid

402 Payment Required

AUTH004 Usage Exceeded

Problem: This apikey has no more usage remaining.

Solution:

  1. Top up your account in the ZenRows Billing page
  2. Upgrade your plan in the ZenRows Plans page
  3. Check your current usage to see if you’re approaching limits before they’re reached
  4. For temporary needs or puntual issues, contact our support team

AUTH005 API Key Is No Longer Valid

Problem: This apikey has reached its validity period.

Solution:

  1. Check your subscription in the ZenRows Billing page
  2. Check if your account is active and working, you can perform a request from the Builder itself
  3. Contact support if you believe there is an issue with your account

AUTH010 Feature Is Not Included In Plan

Problem: The requested feature is not included in your subscription plan.

Solution:

  1. Review the features included in each plan
  2. Upgrade to a plan that includes the feature you need
  3. Modify your code to avoid using premium features if you don’t upgrade
  4. Contact our support team if you believe there is an issue with your account

AUTH011 No Subscription Found

Problem: This account does not have an active subscription.

Solution:

  1. Purchase a subscription plan from the ZenRows plans page
  2. Check for any failed payment attempts in your account history
  3. Verify your payment method details are correct
  4. Contact our support team if you believe there is an issue with your account

AUTH012 Subscription Does Not Allow To Use The Product

Problem: This account subscription does not allow to use this service.

Solution:

  1. Check which ZenRows products your subscription includes
  2. Upgrade to a plan that includes the product you’re trying to use
  3. Ensure you’re using the correct API endpoint for your subscription
  4. Contact our support team if you believe there is an issue with your account

403 Forbidden

AUTH009 User Is Not Verified

Problem: This apikey belongs to a user that has not verified the email account.

Solution:

  1. Check your email inbox (including spam folder) for a verification email
  2. Request a new verification email
  3. Ensure your email address is entered correctly in your profile
  4. Contact support if you continue to have verification issues

BLK0001 IP Address Blocked

Problem: Your IP address has been blocked for exceeding the maximum error rate allowed.

Solution:

  1. Wait a few minutes before retrying requests
  2. Implement error handling in your code to prevent excessive failed requests
  3. Use exponential backoff when retrying failed requests
  4. If using the service in a high-traffic environment, consider implementing a queue system to manage request rates

404 Not Found

RESP002 Page Not Found

Problem: The requested URL page returned a 404 HTTP Status Code.

Solution:

  1. Verify the URL exists by opening it in a browser
  2. Check for typos or encoding issues in the URL
  3. If the page was recently available, it might have been moved or deleted
  4. For dynamic sites, try adding js_render=true as some 404 pages are generated via JavaScript
  5. Note that these requests are billed

RESP007 Site Not Found

Problem: The requested target domain could not be resolved, or there is no DNS record associated with it.

Solution:

  1. Verify the domain exists by checking in your browser
  2. Check for typos in the domain name
  3. If using an IP address, ensure it’s correctly formatted
  4. If the domain is new or rarely accessed, DNS propagation might still be in progress
  5. Try using premium proxies and geolocation since the domain might be available only in certain countries
  6. Note that these requests are billed

405 Method Not Allowed

REQS005 Method Not Allowed

Problem: The HTTP verb used to access this page is not allowed.

Solution:

  1. Change your request method to one of the allowed methods: GET, POST, or PUT
  2. For complex requests, consider breaking them down into multiple simpler requests
  3. Check if the endpoint you’re trying to access has specific method requirements

407 Proxy Authentication Required

AUTH007 Invalid Proxy-Authorization Header

Problem: The Proxy-Authorization header sent does not match the expected format.

Solution:

  1. Ensure the Proxy-Authorization header is a base64 encoded string of <apikey>:<params>
  2. Check your base64 encoding function for errors or incorrect character handling
  3. Try API calls instead of proxy mode to ensure that the API key and account are working properly

413 Content Too Large

RESP005 Response Size Exceeded The Limit

Problem: The response data size is bigger than the maximum allowed download size.

Solution:

  1. Request specific parts of the page using CSS selectors instead of the entire page
  2. Split large pages into multiple smaller requests by targeting specific sections
  3. Use pagination parameters if available on the target site
  4. If using JSON Response, the full response will be considered for the size limit - try revoming it and see if it works

422 Unprocessable Entity

RESP001 Could Not Get Content

Problem: The service couldn’t get the content.

Solution:

  1. Add js_render=true as the site might require JavaScript to load content
  2. Enable premium_proxy=true if the site has anti-bot measures
  3. Try adding geolocation to the request set to a country where the site is available
  4. Increase wait time with wait=5000 or higher if content loads slowly
  5. Check the error’s body for more specific details about the failure
  6. Try using custom headers with a referer to mimic a real browser:
params={
  // ...
  "custom_headers": true,
}
headers={
  "Referer": "https://www.google.com"
}

424 Failed Dependency

RESP006 Failed To Solve CAPTCHA

Problem: The CAPTCHA solver provider was unable to solve the CAPTCHA detected in the page.

Solution:

  1. Check your CAPTCHA solver service account for sufficient balance
  2. Try adding premium proxies to the request
  3. Implement retry logic with increasing wait times between attempts

429 Too Many Requests

AUTH006 Concurrency Exceeded

Problem: The concurrency limit was reached.

Solution:

  1. Implement a queue system in your code to limit concurrency requests
  2. Monitor the Concurrency-Remaining header to adjust your request rate dynamically
  3. Increase wait times between batches of requests
  4. For high-volume scraping needs, upgrade to a plan with higher concurrency limits
  5. Learn more about how ZenRows concurrency works and implement the provided code examples
  6. Note that canceled requests on the client side will not release concurrency until the processing is done in the server side - we recommend not setting a timeout below 3 minutes

AUTH008 Rate Limit Exceeded

Problem: The rate limit was reached.

Solution:

  1. Implement exponential backoff between requests
  2. Distribute requests evenly over time rather than sending them in bursts
  3. Set up a queue system with configurable delay between requests
  4. For time-sensitive projects, consider upgrading to a plan with higher rate limits
  5. Monitor usage patterns to identify and optimize peak request periods

500 Internal Server Error

CTX0001 Context Cancelled

Problem: The request was canceled from the client’s side.

Solution:

  1. Check your client’s timeout settings - we recommend not setting a timeout below 3 minutes
  2. If you’re canceling requests manually, review your cancellation logic
  3. Ensure your network connection is stable during the entire request

ERR0001 Unknown Error

Problem: An internal error occurred.

Solution:

  1. Retry the request after a short delay (10-30 seconds)
  2. Check the ZenRows status page for any ongoing issues
  3. Implement error logging to capture the full error response for troubleshooting
  4. If the error persists, contact support with details of your request

ERR0000 Unknown Error

Problem: An unexpected internal error occurred.

Solution:

  1. Retry the request after a short delay (10-30 seconds)
  2. Check the ZenRows status page for any ongoing issues
  3. Implement error logging to capture the full error response for troubleshooting
  4. If the error persists, contact support with details of your request

502 Bad Gateway

RESP003 Could Not Parse Content

Problem: The request failed because the URL could not be automatically parsed.

Solution:

  1. Remove the autoparse parameter and process the raw HTML response
  2. Contact support with details of your request if the issue persists

504 Gateway Timeout

CTX0002 Operation Timeout Exceeded

Problem: The request exceeded the maximum allowed time and was aborted.

Solution:

  1. Check if the target website is slow or unresponsive in a browser
  2. Reduce the complexity of your request if using JS Instructions
  3. Try adding premium proxies to the request or geolocation to a country where the site is available
  4. Break complex scraping tasks into smaller, more focused requests
  5. If the issue persists, contact support with details of your request and use case