Mastodon Hashtag Monitor: New Public Posts Since Last Run avatar

Mastodon Hashtag Monitor: New Public Posts Since Last Run

Pricing

from $0.60 / 1,000 post returneds

Go to Apify Store
Mastodon Hashtag Monitor: New Public Posts Since Last Run

Mastodon Hashtag Monitor: New Public Posts Since Last Run

New public Mastodon posts for any hashtag on mastodon.social or another instance, with text, author, boosts and links. A real monitoring mode returns, and bills for, only the posts new since your last run.

Pricing

from $0.60 / 1,000 post returneds

Rating

0.0

(0)

Developer

Adriana Voss

Adriana Voss

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Get every new public Mastodon post for a hashtag, without being charged for the ones you already have. Reads the public hashtag timeline of mastodon.social (or any other Mastodon instance you name) and returns one row per post: plain text, author, posted time, replies, boosts, favourites, tags, attachments and a link. Turn on monitoring mode and run it on a schedule: you only get, and only pay for, the posts that are new since your last run, and a quiet hour costs nothing.

Who uses it: PR and comms teams watching a campaign tag, journalists and sources tracking #JournoRequest or #PRrequest, community managers and researchers following a topic across the fediverse, and workflow builders feeding n8n, Make or Clay.

What it does not return: author bios, follower counts or avatars. This is a post monitor, not a profile scraper. Coverage is the instance's own view of the fediverse: a post only appears on an instance that has seen it, so the same hashtag can return different counts on different instances. Some instances refuse anonymous hashtag timelines; those come back as a free BLOCKED row.

How to use

  1. In the Apify Console. Open the actor page and click Start — the hashtags field is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found.
  2. Via the API. Call it directly with a POST request — no Console needed once you have an API token:
    curl "https://api.apify.com/v2/acts/accountable_eel~mastodon-hashtag-monitor/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
    -X POST \
    -H "Content-Type: application/json" \
    -d '{"hashtags":["journorequest"]}'
  3. On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.

Input

{
"hashtags": [
"journorequest"
]
}

One hashtag per line, with or without the #. Letters, digits and underscores only. Each hashtag is read from the public timeline of the instance chosen below. Accepted formats: journorequest, photography, #opensource.

One run reads each hashtag's timeline newest-first, up to Max posts per run. Keyword include/exclude and the language filter are applied before monitoring remembers anything, so a post your filter hides is not marked as seen and will still be delivered if you widen the filter later.

Output

One row per post, for example:

queryfoundstatusinstancepostCounttruncatedmonitorStatuspostshashtagpostUrluristatusIdtextcontentWarninglanguagecreatedAteditedAtauthorHandleauthorDisplayNameauthorProfileUrlauthorIsBotrepliesCountboostsCountfavouritesCounthashtagsmediaCountmediaUrlsisReplyisSensitiveisNewfirstSeenAtscrapedAt
journorequesttrueOK<all posts (full list)><is this post new?>1970-01-01T00:00:00.000Z

A hashtag with no posts comes back as a row with "found": false and is never charged. Missing values are null, never 0 or an empty string (a real count of zero stays 0). A monitoring run with nothing new returns one row with postCount: 0 and costs nothing.

Pricing

Pay-per-event. A flat per-run fee covers session/proxy warmup; you're billed per item only when data is actually found and returned — see .actor/pay_per_event.json for exact prices. A miss is never charged.

Example runs

Paste any of these into the Input tab and press Start. All three return rows with no key, no token and no account of your own beyond an Apify login.

Journalist requests on mastodon.social. The default shape.

{
"hashtags": ["journorequest"],
"maxResults": 20
}

A topic across two hashtags, English only, on another instance.

{
"hashtags": ["opensource", "selfhosted"],
"instance": "fosstodon.org",
"language": "en",
"maxResults": 50
}

A scheduled alert: only posts new since the last run.

{
"hashtags": ["prrequest", "journorequest"],
"onlyNewSinceLastRun": true,
"deltaName": "pr-requests"
}

Use it from Clay, n8n, Make, or an AI agent

This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.

curl "https://api.apify.com/v2/acts/accountable_eel~mastodon-hashtag-monitor/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
-X POST \
-H "Content-Type: application/json" \
-d '{"hashtags":["journorequest"]}'

n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~mastodon-hashtag-monitor/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"hashtags":["journorequest"]} (swap in an expression from an earlier node for a real value).

Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~mastodon-hashtag-monitor/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"hashtags":["{{hashtag}}"]}, mapping the row's hashtag into the hashtags array.

MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "mastodon hashtag monitor" — the agent will find and run this actor.