FlowRunner
PricingContact
Theme
Start Free

ScrAPI is a privacy-first web scraping API with browser automation, CAPTCHA solving, and proxy rotation. Agents scrape pages as HTML, Markdown, or JSON, capture screenshots and PDFs, and run hosted ecommerce price and stock monitors.

Verified 13 actions API key available
ScrAPI website Platform Documentation Capability data verified 2026-08-25
The weekly monitor audit fires on a schedule
List Ecommerce Monitors returns every hosted watch on the key with its selectors and its schedule
List Monitor Runs reads each monitor's recent history for a price that is empty or has not moved in weeks
Scrape URL fetches the live product page so the agent can resolve each suspect monitor's selectors against today's markup
Download Monitor Runs CSV preserves the run history of every monitor flagged as suspect
Each flagged monitor goes to its owner with the flat run series beside what its selectors return now
The owner decides whether those weeks were a stable price or a blind monitor, and whether the history survives the fix

What This Integration Enables

ScrAPI does two different jobs and the second one is the reason to care about it. The first is ordinary: fetch a page, optionally through a real browser with CAPTCHA solving and proxy rotation, and return it as JSON, raw HTML, or Markdown. The second is a hosted ecommerce monitor, a watch that lives on ScrAPI's side, scrapes a product page on its own schedule between hourly and weekly, and records the price and stock status it saw each time.

That second job is a standing commitment, and standing commitments are where automation quietly goes wrong. FlowRunner agents can create monitors, read their history, spot the ones that have gone blind, and repair them. They should not be the last thing to look at a price series before somebody prices against it. Two ScrAPI details make the human-in-the-loop step earn its place here rather than decorate the page: a monitor whose selector stopped matching does not raise an error, and deleting a monitor takes its run history with it.

Without FlowRunner

Price checks by hand Somebody opens competitor product pages on a cadence that slips whenever the week gets busy
Monitors nobody audits A watch set up last year keeps running, keeps billing, and nobody has confirmed it still reads the right number
Flat means stable A price that has not moved in two months is read as market discipline rather than as a broken selector

With FlowRunner

Scheduled watches with a run history Every check is recorded with the price and stock status it saw, queryable as a series
An audit that runs itself The agent resolves each monitor's selectors against the live page and reports which ones stopped matching
Flat gets investigated An unchanged series is treated as a question rather than an answer, and a person resolves it

Use Case Scenarios

  • A competitive price watch that reaches the people who set prices

    Products on the watch list get a hosted monitor each, with a price selector and a stock selector read from the live page. The agent polls List Monitor Runs on a schedule, compares the latest reading against the store's own price in Shopify, and posts the gaps to Slack with the series behind each one. The full history exports into Google Sheets for the pricing review. Frequency is a spend decision as much as a freshness one: every run costs credits, and hourly through a residential proxy is a standing hourly charge for a page most categories do not move that fast.

  • Page content a model can read, without paying for the whole page

    For ad-hoc research the agent calls Scrape URL with Markdown output and a response selector, which narrows the return to one part of the page. Both matter downstream. Markdown is the same page with the boilerplate gone, and a selector on a large catalog page cuts the payload and the token bill behind it by an order of magnitude. The credit model rewards restraint here: the HTTP client costs one credit, a real browser costs five, and a screenshot, PDF, or video turns the browser on by itself whatever you set. A screenshot through a residential proxy is not a slightly more expensive fetch.

  • Captures that stop existing

    Screenshots, PDFs, and videos come back as temporary download URLs. A workflow that stores the URL rather than the bytes finds a dead link when somebody opens the ticket a month later. Save Scrape Capture To FlowRunner File does the download and puts the bytes in workspace storage, which is the shape any evidence trail needs. It requires the response format left as JSON, because the capture URL lives in the JSON envelope and the raw HTML and Markdown forms do not carry it.

Human-in-Loop Highlight

Delete Ecommerce Monitor removes a monitor and its entire run history, and that is exactly the operation an audit wants to reach for. A monitor whose price selector stopped matching after a site redesign does not error. It keeps running, keeps spending credits, and keeps reporting no change, which is indistinguishable from a competitor holding their price steady. When the agent finds one, the fix has two shapes and only a person can pick: Update Ecommerce Monitor repairs the selector and keeps a history with an unknown gap in it, or the monitor is deleted and rebuilt clean and the price history goes.

So the agent gathers evidence and stops. It exports the run series with Download Monitor Runs CSV first, then asks: "The monitor on the competitor's flagship SKU has reported 249.00 for eleven consecutive weeks. Its price selector returns nothing against the page as it stands today, and the page markup changed on July 2. Those eleven readings are either a held price or a blind monitor. History exported. Repair the selector and keep the series, or delete and start clean?" Every pricing chart built on that series depends on which of those two answers is true, and the API cannot tell you.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via preferred channel
Human decides
Agent resumes with decision

Agent Capabilities

13 actions

Scraping

3
  • Scrape URL Fetches a page and returns it as JSON, raw HTML, or Markdown, optionally through a real browser with CAPTCHA solving, proxies, cookies, sessions, and scripted browser commands. Credits are additive rather than a flat rate, and a screenshot, PDF, or video turns the browser on regardless of the setting, so a capture request is several times the cost of a plain fetch.
  • Save Scrape Capture To FlowRunner File Scrapes a page asking for a screenshot or a PDF, then downloads that file into FlowRunner's own storage and returns its URL. ScrAPI stores capture files temporarily, so a workflow that keeps the vendor's URL rather than the bytes finds it dead later.
  • Get Scrape Status Returns the state of a scrape started with a callback URL, by its reference. The way to poll when a callback might have been missed, or when a workflow prefers not to expose a hook.

Ecommerce Monitors

7
  • List Ecommerce Monitors Returns the hosted price and stock monitors on the key. Each one scrapes on its own schedule and spends credits whether or not anybody is reading the results, which is what makes this list worth auditing rather than assuming.
  • Get Ecommerce Monitor Returns one monitor with its selectors, schedule, and proxy settings.
  • Create Ecommerce Monitor Sets up a hosted monitor that scrapes a product page on a schedule and detects price and stock changes. The two selectors are required and they are the whole thing: one that stops matching after a redesign does not raise an error, it stops reporting changes. Frequency runs from sixty minutes to a week, and every run spends credits.
  • Update Ecommerce Monitor Changes a monitor's selectors, schedule, proxy, or alert address. Repairing a selector here is what revives a monitor that has gone blind, and it keeps the run history that a rebuild would lose.
  • Delete Ecommerce Monitor Removes a monitor and stops its scheduled runs, which stops its credit consumption. Its run history goes with it, so anything worth keeping should be exported first.
  • List Monitor Runs Returns a monitor's recent runs with the price and stock status each one saw. This is the price history, and it is also where a blind monitor shows itself: a series whose price value is empty or unchanged for weeks is usually a broken selector rather than a stable price.
  • Download Monitor Runs CSV Downloads a monitor's run history as a CSV into FlowRunner's own storage. The right shape when the history is going into a spreadsheet or an analysis step, and the step to run before any repair that might lose it.

Proxy Reference

2
  • List Supported Countries Returns the countries accepted for proxy targeting. The values are three-letter codes rather than the two-letter form most APIs use, and the vendor refreshes the list roughly hourly, so it is worth reading rather than caching for months.
  • List Supported Cities Returns the cities accepted within one country. City-level targeting is what makes a local-pricing or local-search check honest, and the available cities differ by proxy type and change over time.

Account

1
  • Get Credit Balance Returns the key's remaining credits. Worth reading with care: this route answers with a zero balance for an invalid key rather than rejecting it, so a zero here means a wrong key at least as often as it means an exhausted one.

Frequently Asked Questions

What can FlowRunner do with ScrAPI?

FlowRunner agents can run Scrape URL, Save Scrape Capture To FlowRunner File, and Get Scrape Status in ScrAPI, plus 10 more actions.

Does connecting ScrAPI to FlowRunner require OAuth?

No. ScrAPI connects to FlowRunner with an API key, no OAuth flow required.

Can ScrAPI trigger a FlowRunner workflow automatically?

ScrAPI doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

Start building with ScrAPI

Free plan, no card required. Connect in minutes.