Add social data to your product.
Profiles, posts, comments, search, hashtags and sounds. Paged, cached and documented.
curl -G api.hooks.social/v1/tiktok/profile \ -d username=nike \ -H "Authorization: Bearer $KEY"Quickstart
One key, simple GET requests and the same clean JSON every time. Or plug your agent in over MCP. You only pay when data comes back.
Profiles, posts, comments, search, hashtags and sounds. Paged, cached and documented.
curl -G api.hooks.social/v1/tiktok/profile \ -d username=nike \ -H "Authorization: Bearer $KEY"Quickstart
Every endpoint is a tool. Your balance is its spending limit, and it stops at zero.
claude mcp add --transport http hooks \ https://mcp.hooks.social \ --header "Authorization: Bearer $KEY"Set up MCP
Fill in a form, see the table and the raw JSON, then copy the exact call into your code.
# each comment comes back as { "text": string, "likes": number, "replies": number, "author": {…} }Open Explorer
The same five problems come up every time a team buys social data.
It broke again, and we still paid for the run.
Blocked, private, empty or timed out? It costs you nothing. When a platform has a bad day, you don't pay for it.
How billing worksWe asked for every comment and got fifteen.
Page through every post and every comment. No plan decides how much of the data you are allowed to see.
See every endpointEvery option we ticked was another charge.
A call returns a whole page of posts or comments. You pay per call, not per row, and there are no add-ons.
See the packsOur bill jumped overnight.
Buy credits up front. When they run out, calls stop. No overage, no surprise invoice, and credits never expire.
Estimate your monthWe wanted three fields and got two thousand columns.
The same small shape on every call, so your parser, your spreadsheet and your agent never break.
See a responseEvery call is a line on your receipt. Data back: one credit for the whole page. Nothing back: free. Credits never expire.
Most data tools price per row, add paid extras, and still bill you when a request comes back empty. We do two platforms properly: one price per call, a whole page of results each time, no extras, and nothing at all when a call fails.
Yes: mcp.hooks.social, Streamable HTTP. Every endpoint is a read-only tool, plus get_balance. Send your key as a Bearer token. Setup for Claude Code, Cursor and others.
Anything that doesn't return data: a private or missing account, a block, a timeout, a mistake in the request. All free.
No. Every pack gets the same endpoints, the same pages and every comment. A pack only changes how many credits you hold.
60 requests a minute per key by default. Make a key per app so one noisy job never blocks another. Need more? Email us.