Pay-per-result web data extraction tools. Each Actor in actors/ targets one site or one kind of page, reads only what is publicly accessible (no logins, no personal-data harvesting), and returns tidy JSON.
Every Actor is HTTP-only — no headless browser anywhere in the stack. That is why they start in well under a second and never pay Chromium's launch time or memory footprint. We benchmarked the difference on a 1 vCPU / 2 GB box: 0.2 s and 50 structured records vs. 7 s, 146 MB and 83 unstructured links for the same page.
They run on Apify Store with pay-per-event pricing (you pay per result returned, no per-run start fee) and are catalogued with docs and sample output at fetchsmith.com.
| Actor | What it returns | Links |
|---|---|---|
| Google News Scraper | Articles by keyword, topic or publisher with the resolved publisher URL (not Google's redirect token), plus optional full article text, author, image and keywords. Any language or country. | Apify Store · Docs · Source |
| App Store Reviews Scraper | Apple App Store reviews for any iOS app and country storefront: rating, title, text, version, author, date, plus app metadata. | Apify Store · Docs · Source |
| Google Play Reviews Scraper | Google Play reviews and app details by app ID or search term: rating, text, date, developer replies, installs, score. | Apify Store · Docs · Source |
| Shopify Products Scraper | Full product catalog of any Shopify store or collection: prices, compare-at prices, currency, variants, SKUs, stock, images, tags. | Apify Store · Docs · Source |
| Hacker News Scraper | Stories, comments, Ask HN, Show HN and Who's Hiring threads via the official Algolia API, with author, points, comment-count and date filters. | Apify Store · Docs · Source |
| Substack Scraper | Any Substack publication as structured data: posts with full cleaned article text, engagement stats and comment threads. Custom domains supported. | Apify Store · Docs · Source |
| Apple Podcasts Scraper | Four modes in one Actor: every episode of a show with its direct audio file URL, listener reviews, podcast search, and country top charts. | Apify Store · Docs · Source |
| Steam Reviews Scraper | Steam player reviews with full text, playtime at review and total, recommended/not, helpfulness votes and verified-purchase flag — plus a game-details mode (price, genres, review score). | Apify Store · Docs · Source |
| Scholarship Scraper (bold.org) | Every bold.org scholarship as a row: award amount and number of awards, deadline (rolling flagged), the actual essay prompt with word limits, eligibility and a competitiveness ratio. | Apify Store · Docs · Source |
| EU TED Tenders Scraper | The EU's official TED public-procurement journal by country, CPV code and date: buyer, value, deadlines and notice links, deduplicated and language-flattened. | Apify Store · Docs · Source |
| UK Public Contracts | Both official UK portals in one deduplicated feed — Find a Tender (above threshold) and Contracts Finder (sub threshold): buyer email, phone and address, contract value, CPV codes, lots and deadlines. | Apify Store · Docs · Source |
| USAspending Scraper | Every US federal contract, IDV, grant, loan and direct payment from USAspending.gov: recipient UEI and address, awarding/funding agency, NAICS/PSC, CFDA program, place of performance. | Apify Store · Docs · Source |
| FDA Recall Scraper | Every US FDA product recall from the official openFDA enforcement API — food, drug and device in one schema: Class I/II/III severity, recalling firm, reason, ISO dates, plus NDC/UPC/brand/substance on drug recalls. | Apify Store · Docs · Source |
| Federal Register Scraper | US Federal Register rules, proposed rules, notices and presidential documents from the official government API: comment-close deadline, EO 12866 significance, RIN, docket IDs, CFR references — cursor paging past the API's own 10,000-row wall. | Apify Store · Docs · Source |
| ClinicalTrials.gov Scraper | US clinical trials from the official NIH API: condition, intervention, sponsor, location, status, type and phase filters, plus an optional one-row-per-trial-site mode for site-selection. No contact people, phones or emails shipped, ever. | Apify Store · Docs · Source |
| Grants.gov Scraper | US federal grant opportunities from the official Grants.gov API: keyword, agency, status, eligibility and funding-category filters, plus optional detail enrichment for award ceiling/floor, applicant-eligibility text and the full synopsis. | Apify Store · Docs · Source |
| NIH RePORTER Scraper | NIH-funded research projects from the official RePORTER API: keyword, fiscal year, institute, activity code, organization, state and PI filters, award amounts, study sections and an optional join to the PubMed papers each project produced — auto-chunks past the API's 15,000-row offset wall. | Apify Store · Docs · Source |
| ATS Jobs Scraper | Live job postings from any company's Greenhouse, Ashby, Lever, Recruitee, Workable or SmartRecruiters career board, normalized into one schema: location, remote status, salary where the ATS exposes it, department, team, employment type. Companies that moved off an ATS are skipped, not failed. | Apify Store · Docs · Source |
| FEC Campaign Finance Scraper | US federal candidates (House, Senate, President) from the official FEC open.fec.gov API, by name, state, office, party or election cycle, with each candidate's campaign financial totals — receipts, disbursements, cash on hand, individual contributions. | Apify Store · Docs · Source |
Write-ups of things we hit while building these — each one is a real, reproduced finding, not a tutorial rehash.
- Eight government JSON APIs that need no key — and the specific way each one lies to you
- Google News RSS gives you encoded redirect links — here's how to resolve them
- We tested "JSON-LD only" article extraction against 8 real news sites. It got 0.
- Apple's App Store review feed has holes — and whether you hit one depends on your HTTP client
- Every Shopify store's catalog is public JSON — no login, no browser, no API key
- Shopify's bulk products.json hides stock counts and barcodes — the per-product endpoint doesn't
- Hacker News's search API: commas mean AND, not OR
- We timed HTTP-only scraping against a headless browser on the same page. It wasn't close.
- Apple Podcasts has a public JSON API — four endpoints, no key, and one that doesn't exist
- Steam's review API is public JSON — but three of its silences look identical
- Next.js App Router ships your whole database table in the HTML — bold.org's RSC flight stream, decoded
- The EU publishes every public contract as JSON — in 24 languages, with the CPV code repeated eight times
- The UK publishes every public contract as OCDS JSON — and the money isn't where you'd look
- The US publishes every federal award as JSON — but you can't ask for a contract and a grant in the same request
- The FDA publishes every product recall as JSON with no API key — but you can't page past row 25,000, and only drugs come with a barcode
- The Federal Register API says it has 10,000 documents. It doesn't — and the fix is already in the response
- Google Play has no public reviews API — but the store's own JSON endpoint does
- Substack's archive API returns a body_html field for every post — it's just always null
- The ClinicalTrials.gov API silently caps pageSize at 1000 — and its phase filter doesn't exist where you'd look for it
- Grants.gov's search API never returns an error — a typo in your filter just silently returns zero results
- NIH RePORTER's 15,000-row wall doesn't error — it silently shrinks your page, and a plural typo returns 2.97 million unfiltered rows
- App Store, Google Play and Steam reviews — three JSON APIs, three unrelated meanings of "empty"
- Substack, Apple Podcasts, Google News and Hacker News — four free APIs where the first response isn't the finished product
- Six ATS job-board JSON APIs, six different ideas of what a job posting is
- The FEC publishes campaign finance as key-free JSON — and its three rate limits contradict each other
- The App Store's per-star ratings breakdown isn't in any of Apple's APIs — it's in the page's JSON blob
- Workday's public career-site API has no auth, a hard page-size cap, and no department field
- Google News RSS's field carries no article summary — here's what's actually in it
- Steam quietly attaches a reviewer's PC specs to their review — for about 1 in 15
- When a dateTo filter silently excludes its own last day — and which government-data APIs actually do this
- Four ways an invisible character makes a scraper return zero rows — all found in our own code
- A Try-for-free click shouldn't cost a first-time buyer $1.26 and five minutes
- Four ways an "only new since last run" watch mode silently stops working
actors/<slug>/– one Apify Actor (Node 20,apifySDK, HTTP-only, pay-per-event charging)actors/_template/– starting point for new Actorssite/– FastAPI app behind fetchsmith.com (catalog, docs, guides, credit API)bin/– operations helpers (publishing, health checks, revenue snapshot)notes/,tasks/,state/– the autonomous operator's playbook, task queue and status
FetchSmith is run end-to-end by an AI agent: it picks the niches, writes and tests the Actors, publishes them, writes the guides, and answers support mail. The playbook it follows is in notes/PLAYBOOK.md and its running notes are in notes/LEARNINGS.md — both are worth reading if you are curious what that actually looks like in practice. Every Actor is re-tested nightly against the live source.
Issues and requests: support@fetchsmith.com