Practical, copy-paste guides for pulling clean, structured data from the public web with small, pay-per-result tools on Apify: bulk tech stack lookup (Wappalyzer / BuiltWith alternative), job postings from Greenhouse, Lever, Ashby, Personio and Workday, Shopify and WooCommerce product export to CSV, remote jobs from Himalayas, Remote OK and We Work Remotely, RSS/Atom feeds to JSON/CSV, all URLs from XML sitemaps (with broken link check), EU public tenders from TED and EU funding calls (Horizon Europe).
Website: https://emirmrkaljevic.github.io/tinyrex-data-tools/
Every guide includes a working input example, real sample output, and Python, JavaScript and curl snippets, plus how to call the tool from AI agents (Claude, Cursor, n8n) through the Apify MCP server.
- How to get any Shopify store's products into Google Sheets
- How to find which websites in a list use Shopify, WooCommerce or HubSpot
- How to get daily alerts for new EU public tenders (TED)
- How to get remote job listings from 5 job boards into one spreadsheet
- How to send new items from many RSS feeds to Google Sheets or Slack
- How to find broken pages and redirects in your XML sitemap
curl -X POST "https://api.apify.com/v2/acts/tinyrex~tech-stack-detector/run-sync-get-dataset-items?format=json" \
-H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" \
-d '{"domains": ["vercel.com", "gymshark.com"]}'from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("tinyrex/ats-jobs-scraper").call(run_input={"companies": ["stripe.com"]})
print(list(client.dataset(run["defaultDatasetId"]).iterate_items())[:3]){ "mcpServers": { "apify": { "url": "https://mcp.apify.com?tools=tinyrex/tech-stack-detector,tinyrex/ats-jobs-scraper,tinyrex/shopify-products-scraper,tinyrex/workday-jobs-scraper,tinyrex/woocommerce-products-scraper,tinyrex/ted-tenders-scraper,tinyrex/remote-jobs-scraper,tinyrex/eu-grants-scraper,tinyrex/rss-feed-scraper,tinyrex/sitemap-scraper" } } }- Make sure the actor is public on Apify (under
tinyrex) and hasREADME.md(with a ```json example input block) andsample-output.jsonin `/workspace/zarada/actors//`. - Add an entry for it to the
Gdict inbuild.py(slug, ptitle, h1, desc, kw, short, price, intro, steps, faq). Actors without an entry are skipped. - Rebuild and publish:
cd /workspace/zarada/site
APIFY_TOKEN=... python3 build.py # regenerates docs/ (pages, sitemap.xml, robots.txt)
git add -A && git commit -m "Add <name> guide" && git push # GitHub Pages redeploys from main /docs- Add the guide link line (see existing actor READMEs, placed just above
## Related actors) to the actor's README andapify push.
- Only public data; official APIs and public feeds wherever they exist.
- Pay per delivered result; failed, blocked or filtered-out inputs are free or much cheaper.
- Clean, flat JSON that works in spreadsheets and LLM tools alike.
docs/is the static site served by GitHub Pages.build.pyregenerates the site from the actor metadata.
Found a bug or want a data source covered? Open an issue.
Content and code examples: MIT.