Journalist Request Feed – #JournoRequest Source Call-outs
Pricing
from $3.00 / 1,000 journalist requests
Journalist Request Feed – #JournoRequest Source Call-outs
Get journalist source requests (#JournoRequest, #PRrequest) from Bluesky with deadline, outlet, requester, topic and how to respond. Keyword alerts, only-new mode for daily schedules, no login. $3 per 1,000 requests.
Pricing
from $3.00 / 1,000 journalist requests
Rating
0.0
(0)
Developer
Cemal Atakli
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Journalist Request Feed: #JournoRequest & #PRrequest source call-outs from Bluesky
Get journalist source requests (#JournoRequest, #PRrequest, #journorequests, #mediarequest, #seekingsources) from Bluesky as clean, structured rows. Each row has the topic, outlet, deadline, requester and how to respond. Schedule it daily with "Only new requests" and you get just the fresh call-outs, so it works as a free-standing HARO / Qwoted-style alert feed for PR people, founders and expert sources.
- No login, no API key. It uses Bluesky's official public AppView API (
app.bsky.feed.searchPosts). - Parsed fields: deadline text plus a resolved date, outlet (The Guardian, i Paper, Newsweek, Metro…), topic, category (expert / case study / product / recommendation), and respond method (link / email / DM / reply).
- Keyword alerts: keep only requests that mention your niche (e.g.
mortgage,nutritionist,Guardian). - Dedupe across runs: a key-value store remembers what you already received for 90 days. Duplicates, already-seen and filtered posts are never charged.
- Junk filtered: round-up digests, press releases, "expert available" pitches and spam that use the hashtags are skipped.
Be aware: volume is honest, not huge
Bluesky is the only source. Most #JournoRequest traffic is still on X/Twitter and in paid platforms, which this Actor does not scrape. On Bluesky the hashtags carry about 4–8 genuine requests per day (roughly 120–200 a month), mostly UK national press, women's magazines and consumer/finance desks. Around half are re-posted by aggregators (The Source Radar, Media Matchmaker, Synapse) with a link to the full brief.
Anonymous Bluesky search returns the newest ~100 posts per hashtag. For #JournoRequest that is about 3 weeks, so a daily or hourly schedule never misses anything.
Use cases
- PR agencies & freelancers: a morning digest of new media opportunities for your clients' topics.
- Founders & experts: get press coverage by answering call-outs in your niche (keyword filter + daily schedule + email/Slack integration).
- Newsrooms & researchers: track what journalists are asking for and which outlets are most active.
- AI agents: feed new opportunities into an agent that drafts pitches (see the MCP section).
Input example
{"hashtags": ["journorequest", "journorequests", "prrequest", "mediarequest", "seekingsources", "journalistrequest"],"keywords": ["mortgage", "finance", "money"],"lookbackDays": 7,"onlyNew": true,"stateName": "finance-alerts","skipExpired": true}
| Field | What it does |
|---|---|
hashtags | Tags to watch (default: the 6 with real volume on Bluesky) |
keywords / excludeKeywords | Keep / drop requests by words in text, outlet or requester |
lookbackDays | Only posts from the last N days (1–60) |
onlyNew + stateName | Return only requests not seen in earlier runs with the same state name |
includeAggregators | Include The Source Radar / Media Matchmaker / Synapse re-posts |
skipNonRequests | Skip digests, press releases and self-promotion (default on) |
skipExpired | Skip requests whose parsed deadline is already past |
languages | e.g. ["en"] |
searchQueries | Extra free-text searches, e.g. "looking for case studies" |
maxRequests | Cap per run |
Output example
{"topic": "Expert comment on sim-swap fraud","outlet": "The Sun","deadline": "23 Oct, 18:00","deadlineDate": "2026-10-23","deadlinePassed": false,"isUrgent": false,"requestCategory": "expert","postType": "request","requesterHandle": "thesourceradar.bsky.social","requesterProfileUrl": "https://bsky.app/profile/thesourceradar.bsky.social","isAggregator": true,"aggregatorName": "The Source Radar","respondMethod": "link","respondUrl": "https://www.thesourceradar.com/r/…","respondEmail": null,"text": "Wanted right now: Expert comment on sim-swap fraud (The Sun). Deadline 23 Oct, 18:00. …","hashtags": ["journorequest"],"matchedKeywords": [],"postedAt": "2026-10-22T16:30:29+00:00","postUrl": "https://bsky.app/profile/thesourceradar.bsky.social/post/…"}
Other fields: requesterName, requesterDid, requesterAvatar, respondDmUrl, links, matchedHashtags, foundBy, language, likeCount, repostCount, replyCount, postUri, scrapedAt. The OUTPUT record in the key-value store holds a run summary with counts of what was skipped and why.
Parsing is heuristic. Deadlines are found from phrases like "Deadline 31 Oct", "by Friday" or "12/23 8AM PT" and resolved relative to the post date. Outlet is detected from 200+ known titles and phrases like "for a national women's health mag". When nothing is found the field is null, and the full post text is always included.
Pricing
Pay per event: $0.003 per journalist request saved ($3 per 1,000). Duplicates, already-seen requests (with onlyNew) and filtered posts are free. A typical daily scheduled run returns 3–10 new requests, so it costs about $0.01–0.03 per day. The run stops cleanly at your maximum total charge.
| Actor | Sources | Price |
|---|---|---|
| This Actor | Bluesky (public API) | $0.003 / request |
| fayoussef/journalist-request-finder | SourceBottle + others | $0.002 / request |
We deliberately do not use SourceBottle (its terms prohibit reproducing call-outs) or X/Twitter scraping.
Use with AI agents / Apify MCP
The Actor works as a tool in the Apify MCP server (Claude, Cursor, ChatGPT and other MCP clients). Example prompt: "Run journalist-request-feed with keywords ['cybersecurity'] and onlyNew true, then draft a two-line pitch for each request." The output is flat JSON with an explicit respondMethod, so agents can route each request to email, link or DM without further parsing.
FAQ
Why so few results? Bluesky carries only a few call-outs a day. Use a longer lookbackDays (up to ~21 days is reachable) or remove keyword filters. An empty run on a quiet day costs nothing beyond the platform's small compute.
How does "Only new" work? Each request saved is remembered (post URI + text fingerprint) in the named key-value store journalist-request-feed-state under SEEN-<stateName> for 90 days. Use a separate stateName per schedule.
Do I need a Bluesky account? No.
Is this allowed? It reads public posts through Bluesky's official API, follows the Bluesky developer guidelines (paced requests, descriptive User-Agent, back-off on rate limits), and skips accounts that opted out of logged-out visibility (!no-unauthenticated). It is read-only and never posts, likes or messages. Please reply to journalists only with relevant pitches.
Why is a post marked as a digest/promo? The classifier uses wording patterns (round-ups, "expert available", press releases). Set skipNonRequests to false to see everything with its postType.