Medium Article Discovery & Metadata Extractor
Find Medium articles by tag, author, publication, keyword search or direct URL, returning title, author, tags, preview text, reading time, publish date and paywall status for each.
Open in Apify Store$0.99 / 1K on Free
Short answer
Medium Article Discovery & Metadata Extractor is an Apify Store Actor for Medium data that returns 8 published output fields, including title, authorName, publicationName, publishedDate. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 12 input settings; one is required (mode). It covers 6 of the 7 core Medium fields this site tracks. Last updated Nov 10, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
8 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
titleauthorNamepublicationNamepublishedDatereadingTimeMinutesclapCounttagsarticleUrl
Not in the schema among the core Medium fields: reading. The field matrix shows which other tools return them.
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| mode | string | Yes | byTag | Choose how to find articles: browse a tag, list an author's posts, list a publication's posts, search by keyword, or look up article URLs. |
| tag | string | No | programming | Tag to browse. Pick a common topic or use the matching value in the dropdown; the latest or most-clapped stories for that tag are collected. |
| customTag | string | No | – | Use any Medium tag slug that is not in the list above. When set, it overrides the Tag selection. |
| sortBy | string | No | new | Order for tag browsing: newest first, or the most-clapped stories from the past week, month, or year. |
| username | string | No | – | Medium username (for example `towardsdatascience`) or a profile URL such as `https://medium.com/@towardsdatascience`. Used by the author mode. |
| publication | string | No | – | Publication slug as it appears in the URL (for example `towards-data-science`) or a full publication URL. Used by the publication mode. |
| query | string | No | artificial intelligence | Keywords to search for across Medium articles. Used by the search mode. |
| articleUrl | string | No | – | One or more article URLs, separated by new lines or commas. Medium URLs, custom-domain Medium articles, and `medium.com/p/...` links are accepted. |
| fromDate | string | No | – | Only keep articles published on or after this ISO date (for example `2025-01-01`). |
| containsKeyword | string | No | – | Only keep articles whose title or preview text contains this keyword (case-insensitive). |
Show the other 2 settings
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| excludePaywalled | boolean | No | false | When enabled, member-only (paywalled) articles are skipped. |
| maxItems | integer | No | 5 | Maximum number of article records to save. Pagination stops when this number is reached or the source runs out. |
Example input
Built from the input form's published example values and defaults.
{
"mode": "byTag",
"tag": "programming",
"sortBy": "new",
"query": "artificial intelligence",
"excludePaywalled": false,
"maxItems": 5
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "byTag",
"tag": "programming",
"sortBy": "new",
"query": "artificial intelligence",
"excludePaywalled": False,
"maxItems": 5
}
run = client.actor("dataspryva/medium-article-discovery-and-metadata-extractor").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"mode": "byTag",
"tag": "programming",
"sortBy": "new",
"query": "artificial intelligence",
"excludePaywalled": false,
"maxItems": 5
};
const run = await client.actor("dataspryva/medium-article-discovery-and-metadata-extractor").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/dataspryva~medium-article-discovery-and-metadata-extractor/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"mode":"byTag","tag":"programming","sortBy":"new","query":"artificial intelligence","excludePaywalled":false,"maxItems":5}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=dataspryva/medium-article-discovery-and-metadata-extractor",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
Where it fits among Medium routes
It ranks 1 of 1 catalogue Actors for Medium on the published formula (fields, price, reliability, freshness). Its line is highlighted on the map.
- 1 Medium Article Discovery & Metadata Extractor 8 output fields, pay per event 6 of 7 core fields
$0.99 / 1K - + 5 other Store tools, combined Reference only 2 of 7 core fields
from $0.50 / 1K - API Medium API (unsupported) and Medium RSS feeds Limited access fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Official route: Medium API (unsupported) and Medium RSS feeds
Limited access. The Medium API covered the authenticated user's profile, publications and publishing posts, not reading other people's articles. Its docs say it is no longer supported and no new integrations are allowed; the repository was archived on March 2, 2023. Medium provides RSS feeds for profiles, publications and topics.
No paid API is offered; RSS feeds are free.
Other Store tools for Medium
Reference only, from their public listings.
| Tool | Fields | Price / 1K |
|---|---|---|
| All-in-One Media Downloader | – | $2.99 |
| Instagram Media Downloader API | 12 | $5.00 |
| Social Media Comments Scraper | 8 | $0.50 |
| Telegram Channel Content & Media Scraper | 17 | $10 |
| Deep Email, Phone, & Social Media Scraper Search | 5 | $12 |
What people use it for
- discover articles
- filter by author or tag
- review article metadata
Similar Actors
Substack Publication Post Exporter
Export posts from any Substack newsletter: title, author, publish date, body, categories and cover image, filtered by category, date or keyword.…
X Article Announcement Post Metadata Collector
Turn an X (Twitter) Article's announcement post or article link into structured metadata: title, preview text, cover image, publish date, and the…
ESPN Live Scores, Schedules & Game Odds Scraper
Get live scores, final results and upcoming fixtures for 16 leagues across basketball, football, baseball, hockey and soccer, with optional…
ESPN Scores, Standings, Teams & News by League
Pull live and recent scores, league standings, team rosters, news headlines, and full game boxscores for NFL, NBA, MLB, NHL, MLS, Premier League,…
Quora Keyword Search & Author Discovery Scraper
Search Quora by keyword or scrape visibly accessible question, answer, profile, topic, Space, and Post URLs directly, with filters for promoted…
Spotify Podcast Show & Episode Metadata Extractor
Search Spotify podcast shows and episodes, fetch a show's full episode list, resolve a show or episode by link, and browse categories by market -…
Questions people ask
How much does Medium Article Discovery & Metadata Extractor cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does Medium Article Discovery & Metadata Extractor return?
Its published output schema lists 8 fields: title, authorName, publicationName, publishedDate, readingTimeMinutes, clapCount, tags, articleUrl. A listed field is not guaranteed to be filled in every row.
What input does Medium Article Discovery & Metadata Extractor need?
Required: mode. Optional settings include tag, customTag, sortBy, username, publication, query.
How do I run Medium Article Discovery & Metadata Extractor from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("dataspryva/medium-article-discovery-and-metadata-extractor").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("dataspryva/medium-article-discovery-and-metadata-extractor").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/dataspryva~medium-article-discovery-and-metadata-extractor/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- Medium Article Discovery & Metadata Extractor on Apify Store
- Published build with input and output schema (JSON)
- Medium API (unsupported) and Medium RSS feeds documentation
Cite this page
Scraper Finder. "Medium Article Discovery & Metadata Extractor." https://scraperfinder.com/catalogue/medium-article-discovery-and-metadata-extractor/ (data checked 2026-11-12).
Run Medium Article Discovery & Metadata Extractor
$0.99 per 1,000 results. Paste the example input above, set your Medium query, then export the dataset. Still choosing? Compare every Medium route.