Journalist Requests Feed (HARO Alternative)
Pricing
from $6.00 / 1,000 journalist requests
Journalist Requests Feed (HARO Alternative)
Open media requests from journalists in one feed: SourceBottle call-outs plus #journorequest, #prrequest, #mediarequest and similar posts on Bluesky and Mastodon. Deadlines, outlet, country, contact emails, topic tags. Schedule it daily and get only new requests.
Pricing
from $6.00 / 1,000 journalist requests
Rating
0.0
(0)
Developer
Joran Morgan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Share
A daily feed of journalists looking for sources: every open call-out on SourceBottle, plus #journorequest, #prrequest, #mediarequest, #bloggerrequest and similar posts from Bluesky and Mastodon. One table with the outlet, country, deadline, days left, contact emails when the journalist posted one, and the topics each request is about.
Since HARO wound down, these requests are spread over paid platforms, a free site or two and hashtags. I got tired of checking all of them for clients, so this pulls the free, public ones together, removes duplicates (the same call-out is often posted to several sections or cross-posted with different hashtags) and puts the ones matching your topics first. Run it every morning with "only new requests" on and you get a short list of fresh opportunities instead of the same ones again.
Example
Input:
{ "keywords": ["small business", "finance", "health"], "onlyNewRequests": true }
Two rows from a real run (Sep 29 2026):
[{"source": "SourceBottle","title": "When did you know you could quit the 9-5 to pursue your business full-time?","summary": "I'm a personal finance reporter looking to speak to a business owner willing to provide some financial details behind making the leap to going full-time as a business-owner. Did it require turning over a particular profit? A certain percentage of your prior salary income?","url": "https://www.sourcebottle.com/query.asp?iid=62&qid=161565","requesterName": "Australian Financial Review","requesterType": "Journalist","verifiedMedia": true,"country": "Australia","localOnly": false,"topics": ["finance", "business"],"contactEmails": [],"deadline": "2026-10-09T17:00:00+00:00","deadlineText": "9 October 2026 @ 5pm","daysLeft": 10,"isOpen": true,"matchedKeywords": ["finance"],"isNew": true},{"source": "Bluesky","title": "Wanted right now: Estate agent for kitchen value campaign","summary": "Wanted right now: Estate agent for kitchen value campaign. Deadline 29 Sept, 14:37. #JournoRequest — the brief and how to reply: https://www.thesourceradar.com/r/cmulamc7b000a8ddiuwvozs5v","url": "https://bsky.app/profile/thesourceradar.bsky.social/post/3mwlqepvkyq2n","requesterName": "thesourceradar.bsky.social","authorHandle": "thesourceradar.bsky.social","deadline": "2026-09-29T14:37:00+00:00","deadlineText": "Deadline 29 Sept, 14:37","daysLeft": 0,"isOpen": true,"matchedKeywords": [],"isNew": true}]
Every row has the same fields (null when a source doesn't provide something). The Pitch queue view shows days left, title, outlet, country, your matched topics, emails and the link to respond.
Sources
| Source | What's collected |
|---|---|
| SourceBottle | All 12 sections: title, full brief, outlet, requester type, country, verified-media flag, local-only flag, deadline |
| Bluesky | Posts with #journorequest, #journorequests, #prrequest, #mediarequest, #bloggerrequest, #sourcerequest, #journorequestuk, #podcastguestwanted |
| Mastodon | The same hashtags on mastodon.social, journa.host, newsie.social, mstdn.social, mas.to and masto.ai |
Social posts are kept only if they read like an actual request ("looking for", "wanted right now:", "writing a piece on"...). Promotional posts from matchmaking services and replies are dropped. Deadlines written in the post ("Deadline 3 Oct, 5pm") are parsed into deadline and daysLeft; posts without a stated deadline are kept with deadline: null.
Honest note on volume: SourceBottle usually has a few dozen open call-outs at any time and the hashtags add a handful to a couple of dozen a day. It's a focused list, not thousands of rows.
Input
| Field | What it does | Default |
|---|---|---|
keywords | Your topics. Matching requests are tagged and listed first | empty |
keywordsOnly | Drop requests that match none of your topics | off |
onlyNewRequests | Only requests not returned to you in earlier runs | off |
onlyOpenDeadlines | Hide requests whose deadline has passed | on |
sources | sourcebottle, bluesky, mastodon | all |
socialLookbackDays | How far back to read social posts | 7 |
sourceBottleIndustries | Limit SourceBottle to some sections | all |
maxRequests | Cap on rows | 500 |
Setting it up as a daily alert
Create a schedule for every weekday morning, turn on onlyNewRequests, and connect the dataset to Slack, email, Google Sheets or your CRM with an Apify integration (or Zapier, Make, n8n). An AI agent can also call it through the Apify MCP server to triage requests and draft pitches.
FAQ
Is this the old HARO? No. HARO's email digests aren't public, and Qwoted, Featured and similar platforms need an account. This collects the requests that are publicly posted.
Why are some deadlines missing? Many social posts don't state one. SourceBottle always does.
Can I reply from here?
Each row has the url to respond: the SourceBottle page (free account needed to reply there), the post itself, or the journalist's link.
What does it cost? See the Pricing tab. You pay per request returned, so a daily run with "only new requests" stays cheap.
Notes
Only public pages and public APIs are read. If a source changes and something looks off, open an issue and I'll fix it.