DocsDownload Managementhttp_download

http_download

http_download

Download a file from an HTTP/HTTPS URL and save it to disk. Supports resume for interrupted downloads, custom output paths, proxy configuration, and Tor anonymization. If no output path is specified, the file is saved to /tmp/owl_downloads/ with a filename derived from the URL or Content-Disposition header. Returns the file path, size, content type, and download timing.

When to use http_download

Use http_download when you need to manage file downloads triggered by a page. It is part of Owl Browser's Download Management toolset and runs inside a self-hosted, source-level stealth engine, so every call inherits the same undetectable browser fingerprint as the rest of your automation — no separate anti-detect setup required.

Usage Example

1234567891011
import asyncio
from owl_browser import OwlBrowser, RemoteConfig
# Async usage
async with OwlBrowser(config) as browser:
context = await browser.create_context()
context_id = context["context_id"]
await browser.http_download(
url="https://example.com"
)

Parameters

Required

urlstringrequired

The URL of the file to download. Supports http:// and https:// protocols.

Optional

output_pathstring

Full path where the file should be saved. If not specified, saves to /tmp/owl_downloads/ with filename derived from URL or Content-Disposition header.

headersobject

HTTP headers as a JSON object or string.

cookiesstring

Cookies to send with the request. Accepts 'name=value; name2=value2' string or a JSON array from browser_get_cookies.

proxy_typeenum
httphttpssocks4socks5+1 more

Type of proxy server.

proxy_hoststring

Proxy server hostname or IP address.

proxy_portinteger

Proxy server port number.

proxy_usernamestring

Username for proxy authentication.

proxy_passwordstring

Password for proxy authentication.

use_torboolean

Use built-in Tor proxy for anonymous download. Default: false

timeoutinteger

Download timeout in milliseconds. Default: 30000 (30 seconds)

ssl_verifyboolean

Verify SSL/TLS certificates. Default: true

ca_cert_pathstring

Path to custom CA certificate bundle file.

resumeboolean

Resume an interrupted download if the server supports byte ranges. Default: false

user_agentstring

Custom User-Agent header string.

Response

Returns a JSON object with the operation result.

{
  "success": true,
  "result": <value>
}

Frequently Asked Questions

What does http_download do?

Download a file from an HTTP/HTTPS URL and save it to disk. Supports resume for interrupted downloads, custom output paths, proxy configuration, and Tor anonymization. If no output path is specified, the file is saved to /tmp/owl_downloads/ with a filename derived from the URL or Content-Disposition header. Returns the file path, size, content type, and download timing. It belongs to Owl Browser's Download Management category and is available through the REST API, the Python SDK (browser.http_download()), the Node.js SDK, and the MCP server.

What parameters does http_download accept?

http_download accepts 1 required parameter (url) and 14 optional parameters. All parameters are sent as JSON in a POST request to /api/execute/http_download.

Is http_download detectable by anti-bot systems like Cloudflare or DataDome?

No. http_download executes inside Owl Browser's Chromium engine, which applies fingerprint spoofing at the C++ source level rather than through JavaScript patches. Every tool call shares the same consistent, human-like fingerprint, so anti-bot systems such as Cloudflare, DataDome, and Akamai see an ordinary browser.

Related Tools

Browse the full Owl Browser API reference or get started with the Python SDK and Node.js SDK.