SocialHolmes

Instagram, Snapchat, TikTok, and YouTube

Social media data, from one API.

Profiles, posts, reels, comment threads, followers and search results come back whole rather than truncated — including the pages that hand most tools a login wall.

  • Billed per result, not per request
  • Parsed, typed JSON
  • 1,000 free credits to start
Instagram username @nasa
Snapchat username @nasa
TikTok tag #spacex
YouTube video_id dQw4w9WgXcQ
One route

One call and one polling loop, whatever the platform.

POST /scrape/instagram/profile POST /scrape/snapchat/story POST /scrape/tiktok/hashtag POST /scrape/youtube/comments
202 queued
GET /runs/3f9c… succeeded
Response 200
{
  "profile": {
    "id": "528817151",
    "username": "nasa",
    "full_name": "NASA",
    "biography": "Exploring the universe",
    "is_verified": true,
    "follower_count": 98243117,
    "following_count": 78,
    "media_count": 4192,
    
  }
}
{
  "stories": [
    {
      "id": "W7_EDlXWTBiXAEEn…",
      "story_type": "public",
      "title": "Artemis II rollout",
      "index": 3,
      "is_sponsored": false,
      "author": {
        "username": "nasa",
      },
      
    },
    
  ]
}
{
  "videos": [
    {
      "id": "7212345678901234567",
      "caption": "Starship static fire",
      "taken_at": "2026-08-26T09:12:44Z",
      "duration": 27,
      "play_count": 4820113,
      "like_count": 612940,
      "comment_count": 8104,
      "author": {
        "username": "spacex",
        "is_verified": true,
      },
      
    },
    
  ]
}
{
  "comments": [
    {
      "id": "Ugx9kQpL2mN4…",
      "text": "this is unreal 🚀",
      "created_at": "2026-08-26T09:12:44Z",
      "like_count": 418,
      "reply_count": 12,
      "language": "en",
      "author": {
        "username": "astro_pete",
        "is_verified": false,
      },
      
    },
    
  ]
}
4
Platforms
51
Endpoints
$0.50
Per 1,000 results
1,000
Free credits on sign-up

Coverage

Four platforms, one shape of code

The same field names on every platform, whether the result came off a feed, out of a comment thread or back from a search — so one set of models covers all of it.

01

Profiles and channels

Bios, follower and subscriber counts, verification, links and categories — read one at a time, or batched into a single run.

Instagram, Snapchat, TikTok, and YouTube
02

Posts, reels, videos and shorts

Captions, media, view, like and share counts, timestamps and the account behind each one, as many as the limit you send.

Instagram, Snapchat, TikTok, and YouTube
03

Comments and replies

Whole threads rather than the first page — deduplicated, with reply counts and the account that wrote each one.

Instagram, Snapchat, TikTok, and YouTube
04

Followers, following and subscriptions

The accounts around a profile, as rows you can page through to whatever limit you ask for.

Instagram, TikTok, and YouTube
05

Stories and highlights

The posts that disappear in a day, and the saved sets kept behind them, with their media still resolvable when they arrive.

Instagram, Snapchat, and TikTok
06

Hashtags, sounds, places and search

What a tag, a sound, a place or a query is showing right now, in the same shape as any other feed.

Instagram, Snapchat, TikTok, and YouTube

Need another one?

Ask for a platform

Pricing

One credit is a hundredth of a cent

Credits are bought up front and spent per result delivered. A comment costs 5 credits and a profile costs 10. There is no plan to pick and nothing to cancel.

What $20 buys
  • 40,000 comments 5 credits each
  • 40,000 feed posts or reels 5 credits each
  • 20,000 profiles 10 credits each

200,000 credits for $20. Credits do not expire, and unused credits are never billed against a plan you did not buy.

Questions

Before you sign up

Still unsure? The docs are public and complete — read what the API does before deciding.

What makes this different from the other scraping APIs?
Completeness, and what you are charged for. The profiles, feeds and comment threads that commonly come back truncated, walled off or empty come back here as full parsed results — and you pay for the results, not the attempt. How we get them is our problem to solve, not a set of knobs you have to tune.
What am I actually charged for?
Results delivered. Ask for 100 comments and get 40, and you pay for 40. A run that returns nothing costs nothing. The maximum a run can cost is quoted and reserved before it starts, then settled down to what actually came back.
Is the API synchronous?
No. A run takes minutes rather than milliseconds, so the API is built around that: you POST a scrape and get a run id back immediately with 202, then either poll the run until it reaches a terminal status or register a webhook and let us post it to you.
Can results be pushed to me instead of polled?
Yes. Register a webhook and we post each run to it the moment it reaches a terminal status, signed so you can check it came from us. Polling stays available either way, and a delivery that fails is retried.
How many results can one run return?
As many as the limit you send, up to what the source actually has. A paged run keeps filling pages until it reaches your limit or runs out, and you are billed for what arrived rather than for what you asked for.
Do I have to parse anything myself?
No. Every result arrives as a JSON object with its fields already typed: counts as numbers, timestamps as ISO 8601 strings, and the account behind a row as a nested object. There is nothing left to pull apart.
Is there a subscription or a minimum?
Neither. No seat fee, no monthly floor, no contract. You buy credits from $5, they do not expire, and you spend them whenever you like.

Make your first call in a minute

Sign up, issue a key, and run a real request from the playground before you write a line of code. No card needed.