An API for agents
Give your agent the numbers behind any post.
Hand Pulse a public post URL — YouTube, X, TikTok, Bluesky, Mastodon, Instagram, Threads — and get back its views, likes, comments, shares, author, and publish date as JSON. Profiles too: a profile URL returns followers. One GET. No signup, no API key. Free.
Free · no account · no key · 9 platforms live · 4,858K+ API calls served · Pro $19/mo for commercial use
One call
A URL in, normalized metrics out.
The same request shape for every platform. Here's a real response.
# one call, any public post — no key, no signup curl "https://pulse.walls.sh/metrics?url=https://www.tiktok.com/@khaby.lame/video/6967348974688816390" { "platform": "tiktok", "views": 39600000, "likes": 5500000, "comments": 39500, "shares": 22300, "publishedAt": "2021-05-28T14:32:30.000Z", "title": "Boss.. one shot - 3 points" }
Endpoints
Four ways to ask.
📈
/metrics
One post URL → views, likes, comments, author, thumbnail, publish date. Short links (vm.tiktok.com, t.co) resolve automatically.
🧺
/metrics/batch
Up to 50 posts in one request — order preserved, one bad URL never fails the batch.
📉
/history
The growth curve: every fresh fetch records a snapshot, so repeat lookups build the post's series over time.
👤
/profile
A profile URL → followers, following, post count, verified. YouTube, TikTok, Instagram, X, Bluesky.
Try it
Paste a post or profile URL, see real numbers.
Live, against this API, right now. A post URL returns its metrics; a profile URL returns followers. No signup — it's free.
Coverage
11 platforms, one endpoint.
Read straight from each platform's own public pages. Live status, kept honest.
YouTube
views · likes · comments · date
Live
X / Twitter
views · likes · comments · shares · date
Live
TikTok
views · likes · comments · shares · date
Live
Bluesky
likes · comments · shares · date
Live
Mastodon
likes · boosts · replies · date
Live
Hacker News
points · comments · date · author
Live
Stack Overflow
views · score · answers · date
Live
profiles: page followers · name (no public post API)
Live
likes · comments · views
Beta
Threads
profiles: followers · name (public page, no login) · posts: needs login
Beta
likes · comments · date
Live
How it works
Made to be called by software.
🤖
Built for agents
Discoverable via OpenAPI and llms.txt, callable with one GET, and payable over x402 if you want — no human in the loop, no dashboard.
⚡
No signup, no key
Nothing to set up. Hit a URL, get JSON. There's no account to create and no API key to manage.
🧱
One normalized shape
Every platform returns views · likes · comments · publishedAt. Integrate once, cover them all.
🌐
Real public numbers
Pulse reads the same public engagement a logged-out visitor sees on each platform's own page, and tidies it into JSON.
🎯
Honest errors
A deleted or private post returns a clean 404 content_unavailable — never silent zeros you'd mistake for real data.
Pricing
Free.
It's free.
No signup, no key, no card. Free for personal projects and indie builds. If you're shipping a commercial product on top of Pulse — a SaaS, an analytics tool, an agent pipeline — Pro is $19/mo and includes commercial use + 10× the throughput.
FAQ
Questions, answered.
Do I need an account or API key?
No. Pulse has no signup and no keys. Your agent calls /metrics?url=… directly and gets JSON back.
Is it really free?
Free for personal projects and indie builds — no account, no card, no rate-limit surprise. If you're building a commercial product on top of Pulse, Pro is $19/mo: commercial license, 10× the throughput (1,200 req/min vs 120), and priority support.
What is x402?
x402 is the open "HTTP 402 Payment Required" standard. It lets software pay for a request with a USDC micro-payment and retry — gasless, no human in the loop. Pulse supports it so agents can pay their own way.
Which platforms work?
Post metrics: YouTube, X/Twitter, TikTok, Bluesky, Mastodon, Hacker News, Stack Overflow, and LinkedIn are live and verified. Profiles (followers): all of those plus Facebook (Facebook is profile-only — it has no public post API). Instagram and Threads are in beta — profiles work for both; post metrics need a session cookie for Threads. See the live status above.
Is this public data?
Yes — Pulse reads the same public engagement numbers a logged-out visitor sees on each platform's own pages, and normalizes them into one JSON shape.
Can I call it from a browser app?
Yes — CORS is enabled for all origins, so a dashboard or browser-based agent can fetch() Pulse directly. No key needed.
What happens for a deleted or private post?
You get a clean 404 {"error":"content_unavailable"} — never fabricated zeros.
Try a call in the next 60 seconds.
Open the docs, copy the curl, run it. That's the whole thing.