This page also covers the residential proxy system — provider configuration, proxied requests, and health monitoring — which the scraping nodes can route through.
Crawlee Scraper
Python-based scraping on top of thecrawlee library. Crawlee manages concurrency, retry back-off, and request queues internally — you feed in configuration and get back a list of pages. Also usable as an AI agent tool.
Engines
Modes
single— scrape only the seed URL (page and depth caps are forced to 1 and 0).crawl— follow links matching Link Selector (defaults toa[href]) and an optional URL Pattern, up to Max Pages / Max Depth.
Parameters
string
required
Seed URL
select
default:"beautifulsoup"
beautifulsoup, playwright, or adaptiveselect
default:"single"
single or crawlstring
CSS selector for text/HTML extraction. Empty extracts the whole page.
select
default:"text"
text, html, or markdown (markdown falls back to text if the html2text package is not installed)boolean
default:"false"
Include a
links[] array on each pagenumber
default:"10"
Page cap in crawl mode (1-1000)
number
default:"2"
Link-following depth in crawl mode (0-50)
string
Glob-style pattern (e.g.
*/blog/*) restricting which discovered links are followed (crawl mode)number
default:"60"
Timeout in seconds — applied per request handler and to the whole run (1-3600)
browser_type (chromium / firefox / webkit), wait_for_selector + wait_timeout (await an element before extracting), take_screenshot (base64 PNG per page).
Proxy knobs: use_proxy plus proxy_provider (auto picks by health score), proxy_country, session_type (rotating / sticky), and sticky_duration — see Proxies below.
Output
Example: crawl a blog
Apify Actor
Run an Apify actor — a pre-built scraper or automation hosted on the Apify platform — wait for it to finish, and return its dataset items. This is the escape hatch for platforms without a first-class OpenCompany integration: Instagram, TikTok, Twitter/X, LinkedIn, Facebook, YouTube, Google Search and Maps, and general website crawling. Also usable as an AI agent tool. To connect your account, open API Credentials, choose Apify, paste your key (formatapify_api_...) into the API Key field, and hit Validate.
Apify is a paid platform. Actors consume Apify usage on your account as they run (many actors also have their own per-result pricing), and heavier
memory settings cost more per second. The compute_units field in the output actually reports the run’s total USD usage. Check an actor’s pricing on Apify before running it at scale.Parameters
select
default:"apify/instagram-scraper"
required
One of 10 curated presets —
apify/instagram-scraper, clockworks/tiktok-scraper, apidojo/tweet-scraper, apify/linkedin-scraper, apify/facebook-pages-scraper, streamers/youtube-scraper, apify/google-search-scraper, compass/crawler-google-places, apify/website-content-crawler, curious_coder/web-scraper — or customstring
Any actor id from the Apify store (when Actor is
custom)string
Raw JSON run-input for the actor. Invalid JSON is silently treated as
{}.number
default:"100"
Maximum dataset items to fetch (1-10000)
number
default:"300"
Run timeout in seconds (1-3600)
select
default:"1024"
Actor memory in MB: 128 / 256 / 512 / 1024 / 2048 / 4096 / 8192
instagram_urls (Instagram), tiktok_profiles / tiktok_hashtags (TikTok), twitter_search_terms / twitter_handles (tweet scraper), google_search_query / google_search_pages (Google Search), and crawler_start_urls / crawler_max_depth / crawler_max_pages (website content crawler). Quick helpers overwrite matching keys in your raw Actor Input JSON.
Output
FAILED, TIMED-OUT, or ABORTED surface as node errors with the actor’s error message.
Proxies
OpenCompany includes a residential proxy service: you register one or more proxy providers (gateway host/port plus a URL template), store their credentials, and the service picks the best provider per request using health scores, routing rules (domain glob -> preferred providers), geo-targeting, and rotating or sticky sessions. The scraping and HTTP nodes opt in transparently — Crawlee Scraper, HTTP Request, and HTTP Scraper all have ause_proxy flag; when set, the node asks the proxy service for a URL and routes traffic through it. Three dedicated nodes manage and use the service directly.
Proxy Config
Admin node (and AI tool) for managing providers, credentials, and routing rules. Dispatches on Operation:
Additional
add_provider / update_provider fields: cost_per_gb (USD), priority (0-100, higher ranks first), enabled. Additional add_routing_rule fields: preferred_providers (JSON array), required_country, session_type.
Proxy Request
A proxy-first HTTP client with explicit retry and failover. Unlike theuse_proxy flag on other nodes (best-effort), Proxy Request requires the proxy service to be enabled and errors out if no provider is available. Each attempt reports latency and success back into the provider’s health score, and successful requests record byte-based cost.
string
required
Target URL
select
default:"GET"
GET / POST / PUT / DELETE / PATCH
object
Request headers
string
Request body for POST/PUT/PATCH — JSON object, or a string (parsed as JSON when possible, sent raw otherwise)
string
default:"auto"
Specific provider name, or
auto for health-based selectionstring
ISO country code for geo-targeting
select
default:"rotating"
rotating (new IP per request) or sticky (keep an IP for sticky_duration seconds, default 600)number
default:"3"
Retry attempts with provider failover (0-10)
number
default:"30"
Request timeout in seconds (1-600)
Proxy Status
Read-only snapshot of the proxy runtime — useful on dashboards or as an agent tool so the agent can reason about which provider to target.enabled: false with empty collections — check enabled, not the node’s success state. The provider_name parameter is currently ignored; the node always returns all providers.
Example: scrape a JS-heavy page and summarize
- Crawlee Scraper — Crawler Type:
playwright, Mode:single, URL: the page to watch, Wait For Selector: the element that signals the page has rendered (e.g..article-body), Output Format:text. - AI Agent — prompt: “Summarize the key points of this page in five bullets.” The scraped
pages[0].contentflows in as input. - Console — shows the summary on each scheduled run.
The RAG pipeline’s HTTP Scraper on Document Processing is a different node: it extracts links from listing pages to feed the download/parse/chunk/embed pipeline, while the nodes on this page extract content.
Tips
Related
Web Search
Find URLs before you scrape them
Browser Automation
Interact with pages instead of just reading them
Document Processing
Feed scraped documents into the RAG pipeline
AI Agents
Give agents scraping tools