GET /v1/post

The original generic endpoint for a single public post and its metrics, by URL, in one normalized shape. One credit a call.

This is the original generic endpoint, and it is still supported. It returns one normalized shape across every platform. The product now leads with named APIs (/v1/tiktok/stats, /v1/instagram/stats and /v1/youtube/stats), which answer in each platform’s own vocabulary. Nothing here is deprecated; the named APIs are simply what the rest of the docs use.

Request

GET /v1/post
Authorization: Bearer sv_live_…
Parameter Type Required Notes
url string yes Post, video, reel or short URL

Cost: Basic, 1 credit.

Example

curl https://api.sourcevine.io/v1/post \
  -H "Authorization: Bearer $SOURCEVINE_API_KEY" \
  --data-urlencode "url=https://www.youtube.com/watch?v=9wq3VHsL_bE" -G
{
  "id": "sd_post_5c08a1fe62b4903d",
  "platform": "youtube",
  "resource_type": "post",
  "platform_resource_id": "9wq3VHsL_bE",
  "author": { "platform_resource_id": "UCq2mAtlasMakes", "username": "atlasmakes" },
  "url": "https://www.youtube.com/watch?v=9wq3VHsL_bE",
  "caption": "Building the workbench, part 3",
  "media_type": "video",
  "published_at": "2026-08-18T14:22:00Z",
  "metrics": {
    "views": 1840000, "likes": 96200, "comments": 4180,
    "shares": null, "saves": null
  },
  "availability": { "status": "available", "reason": null },
  "source_timestamp": "2026-08-27T09:39:00Z",
  "fetched_at": "2026-08-27T09:41:12Z",
  "cache_age_seconds": 0,
  "freshness": "fresh"
}

Which metrics you get

Metric TikTok Instagram YouTube
views ✓ ✓ (video only) ✓
likes ✓ ✓ ✓
comments ✓ ✓ ✓
shares ✓ null null
saves ✓ null null

Deleted posts

A post that no longer exists returns 200 with:

{ "availability": { "status": "not_found", "reason": "resource_deleted" } }

This is charged at the operation’s price, because the lookup was made and “it is gone” is the answer. Do not retry it. The post is gone, and asking again produces the same answer at the same cost.

If you are tracking posts over time, record the not_found and stop polling that resource. A deleted post reads as a 100% drop in engagement, and treating it as a measurement instead of a deletion will corrupt any retention analysis you build on it.

Last updated 27 August 2026