String's Web Access API is now on Apify: 30 Actors
String has published 30 Actors on the Apify Store, under the publisher name usestring. Each one is a small, single-site scraper: give it a list of profiles, a job board, a search term, or a set of ASINs, and it writes structured rows to your Apify dataset. Every Actor fetches through the String Web Access API, the same engine behind our own /fetch endpoint, so anti-bot handling and proxy rotation are done before the Actor reads the page. The set covers job boards and ATS portals, e-commerce and retail, real estate, software and business reviews, finance and ticketing, and public profiles on LinkedIn, TikTok, and Spotify. There is nothing to install. Open an Actor’s Store page, click Try for free, fill in the input, and press Start.
What shipped
All 30 ship from one codebase and one deploy pipeline. Each Actor does three things: it validates the input, builds the list of pages to fetch, and turns each page into rows with a fixed schema. Proxying, session handling, and anti-bot solving stay on the String side. The inputs follow one convention across the set: a required list of targets, maxItems, and concurrency.
Every listing states its limits next to its fields. The LinkedIn Actor returns public profile fields and no contact details. Amazon Search returns one results page per keyword. Zillow Listings reads one search page per location. When an Actor cannot do something, the listing says so, and the output schema shows every column a row can carry.
Who they are for
Apify users who already run Actors and want dependable access on sites that block. If you have a Console account and a workflow built on datasets and schedules, these fit in without a String account or API key. If you would rather call one endpoint for any URL, that is the Web Access API itself. The Actors are the same engine packaged for the Store.
What each Actor scrapes
All 30 are live on the publisher page as of August 31, 2026:
- Greenhouse Job Board ScraperReads a whole Greenhouse board from Greenhouse's own JSON feed in one request: title, department, location, remote flag, posted date and apply URL.
- Ashby Job Board ScraperScrapes every open posting on an Ashby board at jobs.ashbyhq.com, with city, state and country read from Ashby's own postal address.
- iCIMS Job Board ScraperCollects postings from any iCIMS careers portal and follows its own paginator, so a 1,000-posting site comes back in full.
- Taleo Job Board ScraperCollects postings from an Oracle Taleo career section on taleo.net, including the requisition ID and a jobdetail.ftl apply link.
- Workday Job Board ScraperReads a Workday careers site on myworkdayjobs.com through the tenant's own CXS search API, 20 postings at a time.
- Indeed Job Listings ScraperScrapes Indeed by search term and location across the US, UK, Canada, Australia and Germany, carrying the salary the employer stated.
- Glassdoor Jobs ScraperScrapes Glassdoor by keyword and location: employer rating, pay as numbers with its period and currency, and days since posting.
- ZipRecruiter Jobs ScraperSearches ZipRecruiter by keyword and location and returns advertised pay as numbers. Salary estimates are dropped, never passed off as real.
- Upwork Jobs ScraperScrapes Upwork job posts by keyword through the same search API the site calls: fixed budget or hourly range as numbers, plus skill tags.
- Wellfound Startup Jobs ScraperCollects Wellfound startup jobs by role and location, with the salary range and the equity range as numbers rather than strings.
- Amazon Bestsellers ScraperReads Amazon Best Sellers pages by category slug: rank, ASIN, title, price, star rating and review count, across seven marketplaces.
- Amazon Search ScraperRuns keyword searches on Amazon and returns the first results page in order, with an isSponsored flag on the ad placements.
- Amazon Product ScraperTakes ASINs or product URLs and returns a numeric buy-box price, list price, star rating, review count, availability and brand.
- Walmart Product ScraperReads Walmart.com product pages by item ID or /ip/ URL, including the marketplace seller behind the buy box.
- Home Depot Product ScraperReads Home Depot products by item ID or product URL. Pass a store number and the price and the stock come back for that store.
- Etsy Listings ScraperScrapes Etsy search results into rows: price with its currency code, shop name and rating, Bestseller and free-shipping flags. Up to 240 listings per term.
- Fiverr Gig ScraperScrapes Fiverr gig search results: starting price in USD, seller name and level badge, delivery time in days. 48 gigs per search term.
- AutoTrader Vehicle Listings ScraperScrapes AutoTrader from a ZIP code, a UK postcode or a search URL: year, make, model, trim, numeric price, mileage and VIN.
- Zillow Property Listings ScraperScrapes Zillow search results by city, region or ZIP: about 41 listings with zpid, numeric price, beds, baths, areaSqft and exact coordinates.
- Zillow Property Detail ScraperOpens one Zillow home by ZPID or homedetails URL and adds lotSizeSqft, yearBuilt, homeStatus and the full listing description.
- Realtor.com Listings ScraperScrapes Realtor.com by city, state or ZIP: up to 200 listings per location with agentName, brokerName, status and coordinates.
- LoopNet Commercial Listings ScraperScrapes LoopNet by market: asking price, pricePerSqft lease rates, buildingSqft and propertyType such as Office, Retail or Industrial.
- G2 Reviews ScraperScrapes the 10 most recent G2 reviews per product, keeping pros and cons as two fields, with companySegment and the Validated Reviewer flag.
- Capterra Reviews ScraperScrapes 25 Capterra reviews per product with the three sub-ratings Capterra scores separately: easeOfUse, customerService and valueForMoney.
- Google Business Profile Review ScraperFinds recent low-star Google Business Profile reviews by search term and location, with the business's contact details on every row.
- LinkedIn Profile ScraperScrapes public LinkedIn profiles by slug or /in/ URL, with no login and no cookies: dated work history, education and an exact follower count.
- TikTok Profile ScraperScrapes public TikTok profiles by handle, read logged out: followerCount as 95200000 rather than the rounded 95.2M, plus likes and video count.
- Spotify Artist ScraperLooks up Spotify artists by ID, URI or open.spotify.com URL: monthly listeners and followers as integers, plus top tracks with a play count each.
- Yahoo Finance Quote ScraperScrapes Yahoo Finance quotes by ticker: marketCap as an exact 4449911701504 rather than 4.45T, plus peRatio, eps and the 52-week range.
- MLB Ticket Availability ScraperReads MLB box-office inventory: one row per section and price level still on sale, with face value beside the checkout all-in price. 18 of 30 clubs.
Five worth trying first
Give it public profile slugs or /in/ URLs, up to 500 per run. It returns the headline, about text, dated work history and education, location, languages, and an exact follower count. No LinkedIn account, login, or cookies are involved: it reads the schema.org JSON-LD that LinkedIn publishes on the logged-out profile page. Each row carries positions and education with a start year and end year per entry, and followerCount as 40560540 rather than "40M".
{ "profiles": ["williamhgates", "https://www.linkedin.com/in/satyanadella"] }Search terms, an optional location, and a country (us, uk, ca, au, or de). Around 39 jobs per search: title, company, location, the posting's stated salary, employer rating, and posting date. Salary is the employer's own figure. It is null when they did not state one, and it is never inferred from Indeed's estimated-salary panel.
{ "queries": ["software engineer", "data analyst"], "location": "Austin, TX", "country": "us" }A city or region and a listing type (for_sale, for_rent, or sold). Around 41 listings per location, with numeric price, beds, baths, square footage, and coordinates rather than display strings. The Zillow Property Detail Scraper takes the ZPIDs this one returns and adds lot size, year built, listing status, and the full description.
{ "locations": ["Austin, TX", "Denver, CO"], "listingType": "for_sale" }A board URL or a company board token. Greenhouse publishes every board as JSON, so one request returns the whole board: title, company, department, location, remote flag, posted date, and apply URL. The listing's measured run collected 814 postings from 1.23 requests. The Ashby, iCIMS, Taleo, and Workday Actors work the same way on their own boards.
{ "boards": ["https://job-boards.greenhouse.io/databricks", "stripe"] }Marketplaces (us, uk, de, fr, es, jp, au) crossed with category slugs. Each category page returns 30 products with rank, ASIN, title, price, and a numeric rating and review count. Three marketplaces and one category is three pages and about 90 rows. Category slugs are marketplace specific: electronics resolves on amazon.com but not on amazon.de, where computers does.
{ "marketplaces": ["us", "uk", "de"], "categories": ["books"] }How to run one
Sign in to the Apify Console. A free account works.
Open the Actor’s Store page, for example the LinkedIn Profile Scraper, and click Try for free. That opens it in your Console.
On the Input tab, fill in the fields. Each one has an example and a description.
Click Start. Rows appear in the Output tab as they arrive. A target that fails is listed in the run summary; the rest of the batch still returns.
Click Export and pick a format, or read the dataset over the Apify API.
To run one from code, POST the input to the run endpoint and read the run’s default dataset when it finishes. Apify’s client libraries for JavaScript and Python wrap both steps.
POST https://api.apify.com/v2/acts/usestring~linkedin-profiles/runs?token=<APIFY_TOKEN>Same engine as the Web Access API
Every Actor fetches through the String Web Access API. That is the /fetch endpoint we sell directly. It clears the walls free tools can’t: Cloudflare, DataDome, PerimeterX, Turnstile, Kasada. In the open Web Data Frontier Benchmark it passed 97.0% across 99 hard targets, including Amazon, Zillow, LinkedIn, Ticketmaster, Reddit. The Actor adds the part the API leaves to you: which pages to fetch, and how to turn each one into rows.
The choice comes down to the shape you want back. If you want one endpoint for any URL, with markdown or JSON out, use the Web Access API directly; the pricing page has the plans. If you want rows with a fixed schema for one of these sites inside Apify, run the Actor.
Frequently asked questions
How do I scrape TikTok without an account?
Run the TikTok Profile Scraper. You give it handles or profile URLs, up to 500 per run, and it reads each profile logged out. Every row carries the exact followerCount, 95200000 rather than the rounded 95.2M the page displays, alongside followingCount, likeCount, videoCount, nickname, biography, verification and the full-size avatar. It cannot search TikTok by keyword or hashtag, and it does not read private accounts.
How do I scrape LinkedIn profiles without logging in?
The LinkedIn Profile Scraper takes public profile slugs or /in/ URLs, up to 500 per run, and reads the schema.org JSON-LD LinkedIn publishes on the logged-out profile page. No account, cookies or session tokens are involved. Each row carries the headline, About text, dated work history and education, location, languages, profile photo and an exact follower count. It returns no contact details.
How do I scrape Amazon prices and search results?
Three Actors split the work by what you already have. Amazon Product Scraper takes ASINs or product URLs and returns the buy-box price, list price, star rating, review count and availability. Amazon Search Scraper starts from a keyword and returns the first results page in order, with an isSponsored flag on the ad placements. Amazon Bestsellers Scraper starts from a category slug. All three cover US, UK, DE, FR, ES, JP and AU, and each marketplace is fetched from an exit in its own country, so prices come back local.
How do I scrape Zillow or Realtor.com listings?
Zillow Property Listings Scraper takes a city, region or ZIP and returns about 41 listings per location, for sale, for rent or sold, with zpid, numeric price, beds, baths, areaSqft and exact coordinates. Zillow Property Detail Scraper takes the ZPIDs it returns and adds lot size, year built, listing status and the full description. Realtor.com Listings Scraper works the same way on Realtor.com, up to 200 listings per location. LoopNet covers commercial. None of them log in.
How do I scrape job postings from Greenhouse, Workday or Ashby?
Each applicant tracking system has its own Actor: Greenhouse, Ashby, iCIMS, Taleo and Workday. You pass a board URL or a company slug, and the Actor reads that board through the system's own feed, so one request covers a whole board. The Greenhouse listing's measured run collected 814 postings from 1.23 requests. When you want to search rather than read a named board, use Indeed, Glassdoor, ZipRecruiter, Upwork or Wellfound.
Do I need a String account or API key to run these Actors?
No. You run them from your Apify account. Each Actor carries its own access to the String Web Access API, so there is nothing to sign up for on our side.
Do the Actors log in to LinkedIn, TikTok, Amazon, or Zillow?
No. Every listing reads what a logged-out visitor sees. No account, cookies, or session tokens are used on any of the 30.
Can I search LinkedIn or TikTok for profiles with these Actors?
No. You supply the handles or profile URLs, and the Actor returns one row per profile. Discovery by keyword or hashtag is out of scope for the profile Actors; the search-style Actors are Indeed, Glassdoor, ZipRecruiter, Upwork, Wellfound, Amazon Search, Etsy, Fiverr, Zillow Listings, Realtor.com, LoopNet, and Google Business Profile.
What happens when one target in my input fails?
It is recorded under failures in the run's summary and the rest of the batch still returns. A run in which every target failed exits with an error, so an empty dataset is never reported as a success.
Are these the same as calling the Web Access API?
They run on the same engine and return different shapes. The Web Access API takes any URL and returns the page as markdown, JSON, or raw HTML. Each Actor takes an input built for its site and returns rows with a fixed schema. Use the API for arbitrary URLs and the Actors for rows on these sites.
Is String an alternative to Apify?
No. Apify is a platform and marketplace for scrapers; String is a web access API with anti-bot handling built in. These Actors put String's access inside Apify. If you already run Actors, use them there. If you want one endpoint for any URL, use the API directly.
Where do I report a problem with an Actor?
Each Actor's Store page has an Issues tab. Open one there and we will see it.
Cheers,
String team
