Autoparse returns general-purpose JSON from a page. It is deprecated in favor of Zenrows Extract (extract=auto), which builds a tailored extraction for each website.
Autoparse is deprecated. Use Extract (extract=auto) instead.The autoparse parameter still works and existing integrations keep running, so nothing breaks today. It is no longer the recommended way to get JSON from a page, and new integrations should start with Extract. Any sunset will be announced separately, with notice.
Autoparse returns structured JSON instead of raw HTML. A small set of sites has a dedicated parser behind the parameter; on every other site, Autoparse returns the JSON objects it finds embedded in the page’s <script> tags, which may or may not hold the data you are after.
Two things change, so test before you switch a production job over:
The response shape. Autoparse returns whatever JSON it can find on the page, with no guaranteed keys. Extract returns named fields for the entities on the page, so any code that reads Autoparse output by position or by a key it discovered by inspection needs updating.
Domain coverage. Extract serves prepared domains. If yours is not prepared yet, request it; preparation usually takes minutes and then applies to every Zenrows API key.
On the eCommerce page used throughout this guide, the difference is concrete:
Parameter
What comes back
autoparse=true
The JSON embedded in the page: WordPress and WooCommerce configuration objects and a breadcrumb list. The product listing is not part of it.
extract=auto
The 188 products, each with name, price, currency, sku, availability, image_url and product_url, plus a page_context object with the pagination.
Autoparse takes one of two paths, depending on the site:
A dedicated parser, where Zenrows ships one for that site. These cover a limited set of well-known sites and return named fields such as product details, job listings or search results.
Embedded JSON, everywhere else. Autoparse collects the JSON objects it finds in the page’s <script> tags and returns them as an array. On sites that render their data into those objects this is useful; on sites that do not, it returns page configuration and little else.
Neither path is tailored to the site you are requesting, which is the gap Extract closes: it builds and maintains an extraction per domain and returns named fields for the entities on the page.
Remember that Autoparse is an automatic feature designed for general-purpose extraction. It may not capture all fields on every website. Always test requests to verify that all required data is present before implementing in production.
This returns JSON instead of raw HTML. What that JSON holds depends on the site: a dedicated parser where one exists, otherwise the JSON objects embedded in the page. On this eCommerce page it is WordPress and WooCommerce configuration rather than the product listing, which is what Extract returns instead.
This combination ensures that dynamically loaded content is available for parsing while still providing structured JSON output. For more information about JavaScript Rendering, see the JavaScript Rendering documentation.
When Autoparse doesn’t capture all the data you need:
1
Test if the content loads dynamically
Python
# For empty or missing content, enable JavaScript renderingparams = { 'autoparse': 'true', 'js_render': 'true', 'wait': '3000', # Wait for content to load}
2
Bypass protection if the site is blocked
Python
# For blocked pages or captchasparams = { 'autoparse': 'true', 'js_render': 'true', 'premium_proxy': 'true',}
3
Wait for specific elements to appear
Python
# Wait for specific elements to appearparams = { 'autoparse': 'true', 'js_render': 'true', 'wait_for': '.product-price',}
4
Contact support or switch to manual parsing
If Autoparse consistently misses the specific fields you need, contact Zenrows support for analysis, or consider switching to the manual CSS Extractor for precise control. Extract may also capture more complete fields once the domain is prepared.
Remember that Autoparse is an automatic feature designed for general-purpose extraction. It may not capture all fields on every website. Always run test requests to verify that all required data is present before implementing in production.
The autoparse=true parameter is included at no additional cost with all Zenrows requests. You only pay extra for JavaScript Render and Premium Proxy when used.
You can monitor your Zenrows usage in multiple ways to stay informed about your account activity and prevent unexpected overages.Dashboard monitoring: View real-time usage statistics, remaining requests, success rates, and request history on your Analytics page. You can also set up usage alerts in your notification settings to receive notifications when you approach your limits.
Programmatic monitoring: For automated monitoring in your applications, call the /v1/subscriptions/self/details endpoint with your API key in the X-API-Key header. This returns real-time usage data that you can integrate into your monitoring systems. Learn more about the usage endpoint.Response header monitoring: Track your concurrency usage through response headers included with each request:
Concurrency-Limit: Your maximum concurrent requests
Concurrency-Remaining: Available concurrent request slots
X-Request-Cost: Cost of the current request
X-Key-Credits-Remaining: Lowest remaining credits across your API key’s credit caps, sent only for keys with at least one cap
Autoparse works best with structured content sites like e-commerce stores, news websites, job boards, real estate listings, and social media platforms. Sites with clear content hierarchy and semantic markup provide the most accurate results.
Can I combine Autoparse with other Zenrows features?
Yes, Autoparse works with all Zenrows features, except other output features like JSON Response or Markdown Response. If you also set extract=auto on the same request, Extract takes precedence and Autoparse is ignored for that request.
What happens if Autoparse doesn't find the data I need?
If Autoparse misses specific data points feel free to contact Zenrows support for analysis or consider switching to manual CSS Extractor for precise control.
Does Autoparse work with JavaScript-heavy websites?
Autoparse processes whatever HTML is available. For JavaScript-heavy sites, combine it with js_render=true to ensure dynamic content is loaded before parsing. This combination provides comprehensive extraction for modern web applications.
What replaces Autoparse?
Extract (extract=auto). Instead of applying the same general-purpose rules to every website, it builds a dedicated extraction for each individual site, which returns richer fields and adapts automatically when the site’s layout changes. See Migrate to Extract for the parameter swap and what changes in the response.
Is the autoparse parameter going away?
Not today. It is deprecated, which means it still works and existing integrations keep running, but it is no longer recommended and new work should start with Extract. If a removal is scheduled, it will be announced separately with notice.
Was this page helpful?
Assistant
Responses are generated using AI and may contain mistakes.