Setup and compatibility
What Go versions does the SDK support?
What Go versions does the SDK support?
Go 1.23.1 or later, matching the version pinned in the SDK’s
go.mod.What's the correct import path?
What's the correct import path?
github.com/zenrows/zenrows-go-sdk/service/api, singular service. The package name you import it as is scraperapi.Does the SDK support PATCH or DELETE requests?
Does the SDK support PATCH or DELETE requests?
No. The Universal Scraper API only accepts
GET, POST, and PUT. Calling Scrape with any other method returns an InvalidHTTPMethodError immediately.Does the SDK support Proxy Mode?
Does the SDK support Proxy Mode?
No. The SDK talks to the Universal Scraper API’s endpoint directly (API Mode). If you want to use ZenRows as a proxy in your own HTTP client instead, see the Proxy Mode documentation rather than the SDK.
Requests, errors, and concurrency
How do I set a request timeout?
How do I set a request timeout?
Pass a
context.Context created with context.WithTimeout to Get, Post, or Put. We recommend not setting a timeout below 3 minutes, since canceling a request client-side doesn’t immediately free up the concurrency slot on ZenRows’ side.Why doesn't a failed request return a Go error?
Why doesn't a failed request return a Go error?
By design, a non-2xx HTTP response is still a successful round trip as far as the SDK is concerned, it returns a
*Response with err == nil. Check response.IsSuccess(), response.IsError(), or response.StatusCode() yourself. See Error Handling and Retries.What's the default concurrency limit?
What's the default concurrency limit?
The default is 5. The SDK creates an internal semaphore capped at 5 even without an explicit
WithMaxConcurrentRequests call. Set it higher if your plan allows more concurrent requests, or lower it if you’re seeing 429 Too Many Requests errors.Which status codes are retried automatically?
Which status codes are retried automatically?
422, 429, and 500, plus network-level failures. 502, 503, and 504 are not retried by default.Project and support
Is there a Python or Node.js version of the SDK?
Is there a Python or Node.js version of the SDK?
Yes. See the ZenRows Python SDK, published as
zenrows on PyPI, and the ZenRows Node.js SDK, published as zenrows on npm.Where can I see the SDK's source code or report a bug?
Where can I see the SDK's source code or report a bug?
The SDK is open source on GitHub, under the
service/api directory. Open an issue there for bugs, or a pull request if you’d like to contribute.What license is the SDK released under?
What license is the SDK released under?
MIT. You can use, modify, and distribute it freely; see the LICENSE file in the repository.
Still stuck?
Check the API Error Codes reference, or contact support directly.