Categories:Scraping Use Cases,Scraping Tools

Web Scraper for Salesforce: The Ultimate Plug-and-Play Template (No Code Required)

Clock5 Mins Read
calendarCreated Date: May 06, 2026
calendarUpdated Date: May 06, 2026

If you live inside Salesforce, you already know the pain: the data you need is out there on the web — competitor pricing, supplier catalogs, lead enrichment sources, public listings — but getting it into your CRM means exports, spreadsheets, third-party tools, and a lot of copy-paste.

And if you've ever tried to scrape that data yourself, you've hit the next wall: anti-bot protection, CAPTCHAs, IP bans, and JavaScript-heavy pages that return empty HTML. Building a reliable scraper is a project on its own — let alone wiring it into Salesforce.

So we built a template that does it for you.

The Scrape.do Web Scraper for Salesforce is a free, installable package that adds a no-code scraping flow directly to your org. You paste a list of URLs, hit run, and every page is fetched through Scrape.do's rotating-proxy infrastructure and saved as a record in Salesforce — status code, full content, and all. No Apex to write, no middleware, no external automation platform.

Here's how to set it up in about five minutes.

What You'll Get

After installing the package, your org will have:

  • A Screen Flow ("Scrape do Bulk Scraper") where you paste one or more URLs.
  • A custom object ("Scraped Page") that stores each result — source URL, status, status code, and the full page content.
  • The Scrape.do API call handled entirely behind the scenes.

Because every result is a native Salesforce record, you can report on it, build list views, trigger follow-up automation, or export it to CSV/Excel — exactly like any other CRM data.

Prerequisites

You need two things:

  1. A Scrape.do API token. If you don't have one yet, sign up for free — the free tier includes 1,000 successful requests per month, no credit card required. Copy your token from the dashboard; you'll paste it in during setup.
  2. A Salesforce org where you can install packages. A Developer Edition org works perfectly (and is free). You'll need permission to install unmanaged packages.

That's it. No coding skills required.

Step 1 — Install the Package

Click the installation link below while logged into your Salesforce org:

Install the Scrape.do Web Scraper package →

Salesforce will walk you through a standard install screen:

  1. Choose Install for All Users (recommended) so anyone in your org can run the flow.
  2. When prompted to approve third-party access to api.scrape.do, check the box — this is what allows the flow to reach Scrape.do. The package ships with the required Remote Site Setting, so there's nothing else to configure here.
  3. Click Install and wait for the confirmation screen.

The package installs everything you need: the flow, the custom object and its fields, the Apex that powers the callout, and the settings table for your token.

Step 2 — Add Your Scrape.do API Token

The package deliberately ships without an API token — so you (and only you) control which account the requests run on. Adding yours takes 30 seconds:

  1. Go to Setup → Custom Metadata Types.
  2. Next to Scrape Do Settings, click Manage Records.
  3. Click New.
  4. Fill in:
    • Label: Default
    • API Token: paste your Scrape.do token here
  5. Click Save.

Important: The record must be named Default — that's the name the flow looks for. If you skip this step, the flow will tell you no token is configured.

Step 3 — Run the Scraper

  1. Open Setup → Flows and click Scrape do Bulk Scraper (or add it to any page, app, or button — it's a standard Screen Flow).
  2. On the first screen, paste your URLs — one per line:
https://books.toscrape.com
https://example.com/product/123
https://news.ycombinator.com
  1. Click Next.

The flow fetches each URL through Scrape.do, then shows you a summary:

3 page(s) scraped and saved.

OK [200] https://books.toscrape.com
OK [200] https://example.com/product/123
OK [200] https://news.ycombinator.com

Every line tells you whether the page was fetched successfully and what status code came back. Because Scrape.do only charges for successful requests, a FAIL line never costs you a credit.

Step 4 — Use Your Scraped Data

Each scraped page is now a real Salesforce record under the Scraped Page object. Open any record and you'll see:

  • Source URL — the page that was requested
  • StatusOK, FAIL, or ERROR
  • Status Code — the HTTP code returned
  • Content — the full page content (HTML or JSON), ready to parse, search, or feed into downstream automation

From here you can do anything Salesforce lets you do with a record:

  • Build a report or list view of everything you've scraped
  • Export to CSV/Excel straight from Reports
  • Trigger a follow-up flow when new pages arrive (e.g., extract a price field, update a related record)
  • Reference the content in Apex, formulas, or other flows

The web data now lives where your team already works.

How It Works Under the Hood

For the curious, here's the architecture — though you never have to touch any of it.

When you submit your list, the flow passes it to a small Apex action. For each URL, the action builds a Scrape.do request:

https://api.scrape.do/?token=YOUR_TOKEN&url=ENCODED_TARGET_URL

Scrape.do handles the hard part — rotating residential proxies, retry logic, headless-browser rendering when needed, and bypassing the anti-bot systems that would otherwise return empty or blocked responses. The raw response comes straight back, and the Apex action writes a Scraped Page record with the status, code, and content.

Your token is read from a Custom Metadata setting rather than hardcoded, which is why the same package works for everyone without exposing anyone's credentials.

Make It Your Own

This template is intentionally simple so it's easy to extend. A few popular tweaks:

  • JavaScript-heavy sites: add &render=true to the endpoint in the Apex action to render pages in a headless browser before scraping.
  • Geo-targeting: add &geoCode=us (or any supported country) to fetch the page as if from a specific location.
  • Auto-parsing: chain a record-triggered flow on Scraped Page to pull specific fields (price, title, stock status) out of the content into structured columns.

The full Scrape.do parameter reference is in the documentation.

Wrapping Up

Web scraping inside Salesforce used to mean Apex, middleware, or giving up and exporting spreadsheets by hand. With this template, it's a paste-and-click operation that any admin can run — backed by infrastructure that actually gets through.

Install the package, drop in your token, and start pulling web data into your CRM today.

Get started with Scrape.do for free