Public social media data: profiles, posts, comments, transcripts and ad libraries, 30+ platforms.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Captapi API key as a Bearer token. Create one at https://captapi.com/dashboard/api-keys.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Plan, subscription vs top-up credits, monthly quota, and renewsAt — 0 credits. Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
This tool takes no arguments.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Plan, subscription vs top-up credits, monthly quota, and renewsAt — 0 credits. Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Day-by-day credit usage for spend monitoring (0 credits). Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days to include (default 30, max 365). |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"minimum": 1,
"description": "Number of days to include (default 30, max 365)."
}
},
"additionalProperties": false
}Ranked list of which Captapi routes your key calls most (0 credits). Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| days | integer | Number of days to include (default 30, max 365). |
| limit | integer | Max rows to return (default 20, max 100). Free — does not consume credits. |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"minimum": 1,
"description": "Number of days to include (default 30, max 365)."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max rows to return (default 20, max 100). Free — does not consume credits."
}
},
"additionalProperties": false
}Recent API requests for your key — requestId, status, credits, cacheHit (0 credits). Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max rows to return (default 50, max 500). Free — does not consume credits. |
| since | string | Inclusive lower bound on createdAt (ISO date or datetime). |
| until | string | Exclusive upper bound on createdAt (ISO date or datetime). |
| cursor | string | Pagination cursor from nextCursor (createdAt of the last row). Leave empty for the first page. |
| endpoint | string | Exact Captapi path filter, e.g. /v1/instagram/basic-profile. |
| statusCode | integer | Filter by HTTP status code (e.g. 500). |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max rows to return (default 50, max 500). Free — does not consume credits."
},
"since": {
"type": "string",
"description": "Inclusive lower bound on createdAt (ISO date or datetime)."
},
"until": {
"type": "string",
"description": "Exclusive upper bound on createdAt (ISO date or datetime)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from nextCursor (createdAt of the last row). Leave empty for the first page."
},
"endpoint": {
"type": "string",
"description": "Exact Captapi path filter, e.g. /v1/instagram/basic-profile."
},
"statusCode": {
"type": "integer",
"minimum": 1,
"description": "Filter by HTTP status code (e.g. 500)."
}
},
"additionalProperties": false
}Third-party seller storefronts (/sp?seller= / /s?me=) — ASIN + canonical /dp URLs, price, badges. Not influencer /shop/{handle}. Costs 1 credit per 16 products (default limit 20 = 2). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Amazon seller storefront URL (/sp?seller=… or /s?me=…) or raw seller ID. Not influencer /shop/<handle> pages. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max products to include (default 20, max 200; 0 = seller metadata only). Billed per 16-product storefront page: ceil(limit / 16) credits, minimum 1 — the default 20 costs 2. |
| cursor | string | Pagination cursor from nextCursor (page or page:offset). Leave empty for the first page. |
| marketplace | string | Amazon marketplace code. Default US. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Amazon seller storefront URL (/sp?seller=… or /s?me=…) or raw seller ID. Not influencer /shop/<handle> pages. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max products to include (default 20, max 200; 0 = seller metadata only). Billed per 16-product storefront page: ceil(limit / 16) credits, minimum 1 — the default 20 costs 2."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from nextCursor (page or page:offset). Leave empty for the first page."
},
"marketplace": {
"type": "string",
"description": "Amazon marketplace code. Default US."
}
},
"additionalProperties": false
}Compare unified metrics across up to 10 URLs — each row is the analytics/post object (1 credit/resolved URL). Costs 1 credit/url. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| urls* | string | Comma-separated post/video/reel URLs (up to 10), any mix of the same 11 platforms as Post Analytics. Example: a TikTok URL and a YouTube URL in one call. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"urls"
],
"properties": {
"urls": {
"type": "string",
"description": "Comma-separated post/video/reel URLs (up to 10), any mix of the same 11 platforms as Post Analytics. Example: a TikTok URL and a YouTube URL in one call."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Unified metrics for one post, video, or reel — platform auto-detected (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public post/video/reel URL from one of 11 platforms: YouTube, TikTok, Instagram, Facebook, X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, or Rumble. Platform is auto-detected — cross-platform URLs are expected here (unlike single-platform endpoints). Not in scope: Kwai, Twitch, Spotify, Snapchat, and other Captapi platforms. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public post/video/reel URL from one of 11 platforms: YouTube, TikTok, Instagram, Facebook, X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, or Rumble. Platform is auto-detected — cross-platform URLs are expected here (unlike single-platform endpoints). Not in scope: Kwai, Twitch, Spotify, Snapchat, and other Captapi platforms."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Post thread via getPostThread — nested replies[], facet links/mentions/hashtags, rich author (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Bluesky post URL, e.g. https://bsky.app/profile/handle/post/RKEY. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| depth | integer | Reply nesting levels under the post (0 = post only with no replies[], default 1, max 6). Maps to Bluesky getPostThread depth. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Bluesky post URL, e.g. https://bsky.app/profile/handle/post/RKEY. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"depth": {
"type": "integer",
"minimum": 1,
"description": "Reply nesting levels under the post (0 = post only with no replies[], default 1, max 6). Maps to Bluesky getPostThread depth."
}
},
"additionalProperties": false
}Bluesky profile — handle, did, bio, counts, banner, verification{}, labels[], and associated{} (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Bluesky profile URL, @handle, or handle, e.g. bsky.app/profile/handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Bluesky profile URL, @handle, or handle, e.g. bsky.app/profile/handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Author feed — posts and reposts (isRepost marked), quote/external/images embeds, opaque cursor. Costs ~3 credits (0.1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Bluesky profile URL, @handle, or handle, e.g. https://bsky.app/profile/handle.bsky.social. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 100). Billed per result. |
| cursor | string | Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not invent a cursor from publishedAt — the feed is ordered by feed time (reposts sort by repost time). |
| filter | string | Bluesky getAuthorFeed filter: posts_with_replies (default), posts_no_replies, posts_with_media, posts_and_author_threads, or posts_with_video. Controls replies/media/threads — not reposts. Use includeReposts=false to drop reposts. |
| includeReposts | boolean | When false, omit repost rows (reasonRepost). Default true — reposts are included and marked with isRepost / repostedBy / repostedAt. |
One Meta ad by ID — same creative as search, plus delivery breakdowns when Meta publishes them. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Meta Ad Library ad URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Meta Ad Library ad URL or ad ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Written creative copy from a Meta ad — headline, body, CTA, landing URL. Not a speech transcript. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Meta Ad Library ad URL or ad ID. Returns the ad's written copy — headline, body text, CTA and landing URL. Meta does not expose ad audio, so this is not a speech transcript. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Meta Ad Library ad URL or ad ID. Returns the ad's written copy — headline, body text, CTA and landing URL. Meta does not expose ad audio, so this is not a speech transcript. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Ads for one Meta page — active by default, cursor through the HTML batch, same envelope as /facebook/search. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | pageId from /search-companies (preferred), libraryUrl, vanity page URL (facebook.com/nike/), or Ad Library URL with view_all_page_id. Do not pass profileId from facebook.com/{digits}/ when it differs from pageId. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call on the native path; the extended fallback bills per returned ad. |
| cursor | string | Pagination cursor from a previous nextCursor. Pages through the current Meta HTML result batch. |
| status | string | Ad delivery status: ACTIVE (default), INACTIVE, or ALL. Use ACTIVE for "what are they running now?". |
| country | string | Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY. |
Search Meta Ad Library by keyword — active/inactive, media type, date range, platforms, cursor, and spend/impressions when Meta publishes them. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keyword, brand, or advertiser to search Meta Ad Library (min 2 characters). |
| trim | boolean | When true, omit cards/images/videos typed arrays (media[] stays). Captapi payloads are already lean vs Meta nested snapshots. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor from a previous nextCursor. Pages through the current Meta HTML result batch. |
| status | string | Ad delivery status: ACTIVE (default), INACTIVE, or ALL. Use ACTIVE for "what are they running now?". |
| ad_type | string | all (default) or political_and_issue_ads. Spend/impressions are typically only filled for political/issue ads. |
| country |
Find Meta Ad Library pages by brand — name-matched, pageId for company-ads (not profileId). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Company or brand name to search for (min 2 characters). Name-matched — off-brand pages are dropped. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| country | string | Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Company or brand name to search for (min 2 characters). Name-matched — off-brand pages are dropped."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY."
}
},
"additionalProperties": false
}Comment Replies Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook post URL the comment belongs to. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| commentId* | string | ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id. |
{
"type": "object",
"required": [
"url",
"commentId"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook post URL the comment belongs to. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"commentId": {
"type": "string",
"description": "ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id."
}
},
"additionalProperties": false
}Facebook post comments with reactionCount, reactions.like when mixed, author.id (pfbid), and replyCount. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url | string | Facebook post or Reel URL. Omit when feedbackId is set. The URL platform must match this endpoint's platform. A page/profile URL also works: Facebook renders the page's most recent post first, so you get that post's comments (each comment's url names the actual post). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| feedbackId | string | Post feedback id from /v1/facebook/details (base64 feedback:POSTID). Prefer when you already have it — also accepts feedback_id. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook post or Reel URL. Omit when feedbackId is set. The URL platform must match this endpoint's platform. A page/profile URL also works: Facebook renders the page's most recent post first, so you get that post's comments (each comment's url names the actual post)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"feedbackId": {
"type": "string",
"description": "Post feedback id from /v1/facebook/details (base64 feedback:POSTID). Prefer when you already have it — also accepts feedback_id."
}
},
"additionalProperties": false
}Facebook post or Reel — caption, engagement, author id, video{} playback, and music when Facebook exposes them. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Get a Facebook event — title, local start/end, timezone, place, host id, and attendance when exposed. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook event URL, e.g. https://facebook.com/events/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook event URL, e.g. https://facebook.com/events/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Search Facebook events by topic and city — local startDate/timezone, venue. 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Topic keyword, e.g. 'comedy'. Pair with location for city-scoped results. |
| to | string | Inclusive local start date filter YYYY-MM-DD. |
| from | string | Inclusive local start date filter YYYY-MM-DD. Use for upcoming-only windows — Facebook/SERP may return past events. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change). |
| location | string | City/place geo filter (e.g. London). Matches timezone, location.city, or coords near the city — not a title substring. |
| upcoming | boolean | When true and from is omitted, sets from to today's UTC date so past events are dropped. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Topic keyword, e.g. 'comedy'. Pair with location for city-scoped results."
},
"to": {
"type": "string",
"description": "Inclusive local start date filter YYYY-MM-DD."
},
"from": {
"type": "string",
"description": "Inclusive local start date filter YYYY-MM-DD. Use for upcoming-only windows — Facebook/SERP may return past events."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change)."
},
"location": {
"type": "string",
"description": "City/place geo filter (e.g. London). Matches timezone, location.city, or coords near the city — not a title substring."
},
"upcoming": {
"type": "boolean",
"description": "When true and from is omitted, sets from to today's UTC date so past events are dropped."
}
},
"additionalProperties": false
}Newest posts from a public Facebook group — caption, author, engagement, sortBy; 1 credit per post. Costs ~20 credits (1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public Facebook group URL, e.g. https://facebook.com/groups/ID. Must contain /groups/ — profile/page URLs are a definitive 400 (use /v1/facebook/profile-posts for those). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max posts to return (default 20, max 200; up to 80 per call — above that you get 80 with truncatedReason per-call-cap). Billed 1 credit per returned post, minimum 2. |
| sortBy | string | TOP_POSTS | RECENT_ACTIVITY | CHRONOLOGICAL (default) | CHRONOLOGICAL_LISTINGS. Maps to Facebook sorting_setting. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public Facebook group URL, e.g. https://facebook.com/groups/ID. Must contain /groups/ — profile/page URLs are a definitive 400 (use /v1/facebook/profile-posts for those). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max posts to return (default 20, max 200; up to 80 per call — above that you get 80 with truncatedReason per-call-cap). Billed 1 credit per returned post, minimum 2."
},
"sortBy": {
"type": "string",
"description": "TOP_POSTS | RECENT_ACTIVITY | CHRONOLOGICAL (default) | CHRONOLOGICAL_LISTINGS. Maps to Facebook sorting_setting."
}
},
"additionalProperties": false
}Marketplace listing — title, priceAmount, status, seller{}, condition, coords (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook Marketplace item URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook Marketplace item URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Disambiguate city names into Marketplace hubs — id + lat/lng. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | City/place query. Bare names like 'Austin' may return multiple candidates (TX/MN/IN); include a state for a single hit (e.g. 'Austin, TX'). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 10, max 50). Flat 2 credits per call. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "City/place query. Bare names like 'Austin' may return multiple candidates (TX/MN/IN); include a state for a single hit (e.g. 'Austin, TX')."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 10, max 50). Flat 2 credits per call."
}
},
"additionalProperties": false
}Search Marketplace by keyword + city — filters, isLocal/shipsOutsideRadius, opaque cursor (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Product or keyword to search Facebook Marketplace for. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | How many listings to return (1–200). Flat 2 credits when details=false; details=true billed as 2 + 2 per listing. |
| cursor | string | Opaque pagination cursor from a previous nextCursor. A cursor this endpoint did not issue is 400 INVALID_CURSOR. |
| sortBy | string | suggested | distance | creation_time | price_ascend | price_descend. |
| details | boolean | When true, adds description/condition/coordinates/full photo gallery/seller/distanceMiles — billed as 2 + 2 credits per enriched listing (listings the 90s deadline did not reach ship as search cards with truncatedReason=enrich_deadline and are not billed the extra 2). Default false → flat 2 credits; cover photo is still in image. |
| category | string | Top-level category slug, e.g. electronics. |
Facebook page profile — likes vs followers (distinct), talkingAbout, category, website, and public email. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook page URL, @handle, or page name, e.g. https://facebook.com/PageName. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook page URL, @handle, or page name, e.g. https://facebook.com/PageName. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}List a Facebook Page's events — local startDate, timezone, venue. 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call. Response `source` is native or extended (fetch path — not a price change)."
}
},
"additionalProperties": false
}Photo grid from a Facebook Page — full image URL plus accessibilityCaption (alt-text, not a post caption). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). The public /photos grid is a single SSR batch (often ~8) — retrievableCount is that batch, not a promise Facebook will fill limit. Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). The public /photos grid is a single SSR batch (often ~8) — retrievableCount is that batch, not a promise Facebook will fill limit. Flat 2 credits per call."
}
},
"additionalProperties": false
}Latest posts and Reels from a Facebook page — listingHits / timings.phase; 60s deadline, failures 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 4, max 4). The logged-out listing hop is ~23–29s typical, hard-capped at 40s. Each hydrate is typically 6–10s (can be ~100ms when listing already carried the post) and is capped at 12s. The next-item fit check uses that 12s cap, not the typical 6–10s, so a call cannot exceed 60s. The loop stops when the next item would miss the 60s deadline and returns what it has (truncatedReason=hydrate-budget | deadline). Asking for 20 cannot return 20 inside that ceiling. Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 4, max 4). The logged-out listing hop is ~23–29s typical, hard-capped at 40s. Each hydrate is typically 6–10s (can be ~100ms when listing already carried the post) and is capped at 12s. The next-item fit check uses that 12s cap, not the typical 6–10s, so a call cannot exceed 60s. The loop stops when the next item would miss the 60s deadline and returns what it has (truncatedReason=hydrate-budget | deadline). Asking for 20 cannot return 20 inside that ceiling. Flat 2 credits per call."
}
},
"additionalProperties": false
}Latest Facebook page Reels — views, likes, comments, shares; newest-first without archive padding. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Facebook profile/page URL, @handle, or page name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
}
},
"additionalProperties": false
}Summarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public Facebook video or post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Public events with typed payload (Push commits/ref, PR/issue action) — 90-event ceiling. Costs ~12 credits (0.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 30, max 90). Billed per result. |
| cursor | string | Opaque cursor from a previous nextCursor. Pagination stops after GitHub's 90-event public activity ceiling. |
| username* | string | GitHub username or profile URL, e.g. getify. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 30, max 90). Billed per result."
},
"cursor": {
"type": "string",
"description": "Opaque cursor from a previous nextCursor. Pagination stops after GitHub's 90-event public activity ceiling."
},
"username": {
"type": "string",
"description": "GitHub username or profile URL, e.g. getify."
}
},
"additionalProperties": false
}GitHub contribution graph — sorted days[], currentStreak (today grace), longestStreak (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| username* | string | GitHub username or profile URL, e.g. getify or https://github.com/getify. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"username": {
"type": "string",
"description": "GitHub username or profile URL, e.g. getify or https://github.com/getify."
}
},
"additionalProperties": false
}Follower cards {id, login, type, url, avatar} — ~0.1/row; large accounts are expensive to page fully. Costs ~3 credits (0.1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 30, max 100). Billed per result. |
| cursor | string | Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number. |
| username* | string | GitHub username or profile URL, e.g. getify. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 30, max 100). Billed per result."
},
"cursor": {
"type": "string",
"description": "Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
},
"username": {
"type": "string",
"description": "GitHub username or profile URL, e.g. getify."
}
},
"additionalProperties": false
}Accounts a user follows — same card and ~0.1/row pricing as followers. Costs ~3 credits (0.1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 30, max 100). Billed per result. |
| cursor | string | Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number. |
| username* | string | GitHub username or profile URL, e.g. getify. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 30, max 100). Billed per result."
},
"cursor": {
"type": "string",
"description": "Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
},
"username": {
"type": "string",
"description": "GitHub username or profile URL, e.g. getify."
}
},
"additionalProperties": false
}List repo PRs — draft, labels, author{}, head/base, opaque Link cursor (state echoed). Costs ~12 credits (0.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| repo* | string | Repository URL or owner/name, e.g. vercel/next.js. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 30, max 100). Billed per result. |
| state | string | open (API default), closed, or all. Echoed as data.state. Docs example uses closed so mergedAt is visible. |
| cursor | string | Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number. |
{
"type": "object",
"required": [
"repo"
],
"properties": {
"repo": {
"type": "string",
"description": "Repository URL or owner/name, e.g. vercel/next.js."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 30, max 100). Billed per result."
},
"state": {
"type": "string",
"description": "open (API default), closed, or all. Echoed as data.state. Docs example uses closed so mergedAt is visible."
},
"cursor": {
"type": "string",
"description": "Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
}
},
"additionalProperties": false
}List a user's repos with sort/direction/type — opaque Link cursor (~0.4/repo). Costs ~12 credits (0.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| sort | string | created | updated | pushed | full_name (default updated). Not stars — GitHub's user-repos API has no stars sort. Echoed as data.sort. |
| type | string | owner (default) | member | all — affiliation filter. Echoed as data.type. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 30, max 100). Billed per result. |
| cursor | string | Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number. |
| username* | string | GitHub username or profile URL, e.g. torvalds. |
| direction | string | asc or desc (default desc). Echoed as data.direction. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"sort": {
"type": "string",
"description": "created | updated | pushed | full_name (default updated). Not stars — GitHub's user-repos API has no stars sort. Echoed as data.sort."
},
"type": {
"type": "string",
"description": "owner (default) | member | all — affiliation filter. Echoed as data.type."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 30, max 100). Billed per result."
},
"cursor": {
"type": "string",
"description": "Opaque cursor from a previous nextCursor (GitHub Link page=). Not a bare page number."
},
"username": {
"type": "string",
"description": "GitHub username or profile URL, e.g. torvalds."
},
"direction": {
"type": "string",
"description": "asc or desc (default desc). Echoed as data.direction."
}
},
"additionalProperties": false
}GitHub repo — stars, real watchers (subscribers), openIssuesAndPrs, license, parent when fork (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| repo* | string | Repository URL or owner/name, e.g. torvalds/linux or https://github.com/torvalds/linux. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"repo"
],
"properties": {
"repo": {
"type": "string",
"description": "Repository URL or owner/name, e.g. torvalds/linux or https://github.com/torvalds/linux."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}github.com/trending/developers — windowed ranks with popularRepo + followers (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 100). Flat 2 credits per call. |
| since | string | Trending window: daily (default), weekly, or monthly — matches github.com/trending/developers?since=. |
| language | string | Optional programming-language slug → /trending/developers/{language}. |
{
"type": "object",
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 100). Flat 2 credits per call."
},
"since": {
"type": "string",
"description": "Trending window: daily (default), weekly, or monthly — matches github.com/trending/developers?since=."
},
"language": {
"type": "string",
"description": "Optional programming-language slug → /trending/developers/{language}."
}
},
"additionalProperties": false
}github.com/trending — repos ranked by starsGained (daily|weekly|monthly), not all-time stars (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 100). Flat 2 credits per call. |
| since | string | Trending window: daily (default), weekly, or monthly — matches github.com/trending?since=. |
| language | string | Optional programming-language slug (e.g. python, typescript) → /trending/{language}. |
{
"type": "object",
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 100). Flat 2 credits per call."
},
"since": {
"type": "string",
"description": "Trending window: daily (default), weekly, or monthly — matches github.com/trending?since=."
},
"language": {
"type": "string",
"description": "Optional programming-language slug (e.g. python, typescript) → /trending/{language}."
}
},
"additionalProperties": false
}GitHub public profile — login, type User|Organization, email when public, followers (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| username* | string | GitHub username or profile URL, e.g. getify or https://github.com/getify. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"username": {
"type": "string",
"description": "GitHub username or profile URL, e.g. getify or https://github.com/getify."
}
},
"additionalProperties": false
}Google publishes spend and impression ranges only for election ads; commercial advertisers omit both. isActive is true when lastShown is within 7 UTC days. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| country | string | Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY. |
| creative_id* | string | Google Ads Transparency URL containing AR... advertiser and CR... creative IDs. A creative that does not exist under the advertiser is a definitive 404 AD_NOT_FOUND (upstream answered) — 503 is reserved for actual transport failures. |
{
"type": "object",
"required": [
"creative_id"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY."
},
"creative_id": {
"type": "string",
"description": "Google Ads Transparency URL containing AR... advertiser and CR... creative IDs. A creative that does not exist under the advertiser is a definitive 404 AD_NOT_FOUND (upstream answered) — 503 is reserved for actual transport failures."
}
},
"additionalProperties": false
}Find Google Ads Transparency AR… entities — ranked multi-result (1 credit when found; empty is free). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Brand, domain, or advertiser name (min 2 characters). Expanded + ranked so US prefers Inc. over SRL. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 10, max 50). Flat 1 credit when results are returned; 0 credits when totalReturned is 0. |
| country | string | Two-letter ISO country code used for ranking (e.g. US). Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Brand, domain, or advertiser name (min 2 characters). Expanded + ranked so US prefers Inc. over SRL."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 10, max 50). Flat 1 credit when results are returned; 0 credits when totalReturned is 0."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code used for ranking (e.g. US). Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY."
}
},
"additionalProperties": false
}Google publishes spend and impression ranges only for election ads; commercial advertisers omit both. isActive is true when lastShown is within 7 UTC days. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| sort | string | Client-side sort: last_shown (recent activity first) or first_shown. Default is ATC order. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits when results are returned; 0 credits when totalReturned is 0. |
| topic | string | Only "all" is supported (commercial ATC). Google publishes spend and impression ranges only for election ads; commercial advertisers omit both. isActive is true when lastShown is within 7 UTC days. |
| cursor | string | Pagination cursor from nextCursor. |
| region | string | Alias for country. |
| country | string | Two-letter ISO country / region code (soft filter). Default US. Alias: region. Non-ISO codes are a definitive 400 INVALID_COUNTRY. |
| end_date |
Local businesses from a Maps search — name, address, phone, website, rating, hours, place id. Flat 2 credits. No emails. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keyword, for example plumber or coffee. Min 2 characters. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max businesses to return (default 20, max 100). Not a page cursor — there is no next page. Flat 2 credits per call; zero businesses is 0 credits. |
| language | string | Language code, for example en. Default en. |
| location | string | Place name: City, Country or City, Region, Country — for example Austin, TX, Istanbul, Turkey, Paris, France, or a country such as Germany. Case, accents, US state codes, and country aliases (USA, UK, Turkey) are handled. A city name shared by several places (Paris) returns 400 with suggestions. When set, the locationCode parameter is ignored. |
| locationCode | integer | Numeric place code, used only when location is omitted. Default 2840 (United States). |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keyword, for example plumber or coffee. Min 2 characters."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max businesses to return (default 20, max 100). Not a page cursor — there is no next page. Flat 2 credits per call; zero businesses is 0 credits."
},
"language": {
"type": "string",
"description": "Language code, for example en. Default en."
},
"location": {
"type": "string",
"description": "Place name: City, Country or City, Region, Country — for example Austin, TX, Istanbul, Turkey, Paris, France, or a country such as Germany. Case, accents, US state codes, and country aliases (USA, UK, Turkey) are handled. A city name shared by several places (Paris) returns 400 with suggestions. When set, the locationCode parameter is ignored."
},
"locationCode": {
"type": "integer",
"minimum": 1,
"description": "Numeric place code, used only when location is omitted. Default 2840 (United States)."
}
},
"additionalProperties": false
}Instagram profile by user ID or @handle — camelCase schema aligned with Channel Details (followers, externalUrl, businessAddress). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| userId* | string | Instagram numeric pk (e.g. 13460080 — the id field on this endpoint), or a profile URL / @handle / username. A Facebook/Graph fbid (17-digit 17841…) is 400 WRONG_ID_TYPE. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"userId"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"userId": {
"type": "string",
"description": "Instagram numeric pk (e.g. 13460080 — the id field on this endpoint), or a profile URL / @handle / username. A Facebook/Graph fbid (17-digit 17841…) is 400 WRONG_ID_TYPE."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Instagram profile stats — fixed key set (null fillers), fbid, bioLinks, isBusinessAccount, approx flags. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Latest posts from a public Instagram profile — carousel children[], mediaCount, user{} in one call. Costs ~6 credits (0.3/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (e.g. 3937014945555313553_1697296). A null nextCursor means the end of the list. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (e.g. 3937014945555313553_1697296). A null nextCursor means the end of the list."
}
},
"additionalProperties": false
}Latest Reels from a public Instagram profile — pass userId to skip resolve; ceil(n×0.3) credits; nextCursor + hasMore. Costs ~6 credits (0.3/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url | string | Instagram profile URL, @handle, or username. Omit when userId is set. The URL platform must match this endpoint's platform. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass nextCursor from the previous response (clips:{userId}:{opaque} on the native Reels path, or legacy {mediaId}_{userId}). Stop when hasMore is false. |
| userId | string | Instagram numeric user ID (e.g. 173560420). Skips handle→ID resolve (legacy sequential WPI alone could cost ~80s). Prefer when you already have the ID from basic-profile or profile-search. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram profile URL, @handle, or username. Omit when userId is set. The URL platform must match this endpoint's platform."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass nextCursor from the previous response (clips:{userId}:{opaque} on the native Reels path, or legacy {mediaId}_{userId}). Stop when hasMore is false."
},
"userId": {
"type": "string",
"description": "Instagram numeric user ID (e.g. 173560420). Skips handle→ID resolve (legacy sequential WPI alone could cost ~80s). Prefer when you already have the ID from basic-profile or profile-search."
}
},
"additionalProperties": false
}Session-paged Instagram comments — a logged-out 2-row preview of a larger thread is 503 SESSION_UNAVAILABLE at 0 credits. Costs ~45 credits (0.9/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Billed per result. |
| cursor | string | Pagination cursor from the previous nextCursor ({mediaPk}:{minId}). Omit on the first page. hasMore is true when nextCursor is set, or when more exist and cannot be paged (nextCursor null + truncatedReason). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from the previous nextCursor ({mediaPk}:{minId}). Omit on the first page. hasMore is true when nextCursor is set, or when more exist and cannot be paged (nextCursor null + truncatedReason)."
}
},
"additionalProperties": false
}Get an Instagram post, Reel or carousel — caption, likes, comments, views, media URLs, author, and per-slide children on carousels. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram post or reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Classic Instagram embed snippet — blockquote.instagram-media + embed.js. Drop html into your page. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram post, reel, or profile URL (or @handle), e.g. https://instagram.com/reel/ID/ or https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram post, reel, or profile URL (or @handle), e.g. https://instagram.com/reel/ID/ or https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Hashtag Explore: native grid first, fallback path only on miss. Max 50. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Hashtag without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 50). Flat 2 credits per call. |
| mediaType | string | all (default) or reels — return only Reels/clips when set to reels. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Hashtag without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 50). Flat 2 credits per call."
},
"mediaType": {
"type": "string",
"description": "all (default) or reels — return only Reels/clips when set to reels."
}
},
"additionalProperties": false
}Persistent Story Highlight albums for a public profile — id, title, cover, owner. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url | string | Instagram profile URL, @handle, or username. Omit when userId is set. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| userId | string | Numeric Instagram user ID. Prefer when known — skips handle→ID resolve. When only userId is set we reverse-resolve the username so the WPI / profile-HTML shelf can still run. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram profile URL, @handle, or username. Omit when userId is set."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"userId": {
"type": "string",
"description": "Numeric Instagram user ID. Prefer when known — skips handle→ID resolve. When only userId is set we reverse-resolve the username so the WPI / profile-HTML shelf can still run."
}
},
"additionalProperties": false
}Items inside one Instagram Story Highlight album — media URLs, type, takenAt. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| id* | string | Highlight id from /v1/instagram/highlights (with or without highlight: prefix). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Highlight id from /v1/instagram/highlights (with or without highlight: prefix)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Resolve a brand or @handle to one public Instagram profile — stable id, bio, links, and stats (not niche discovery). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Account name, @handle, or profile URL to resolve (min 2 characters). A leading _, accents (misión → mision), spaces and URL query strings (?igsh=…) are stripped. A q with no usable username characters is 400 BAD_REQUEST. Not a niche keyword search. |
| cache | boolean | Serve from the 24h shared cache when available (0 credits on hit). Default true — set false to always fetch fresh. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Account name, @handle, or profile URL to resolve (min 2 characters). A leading _, accents (misión → mision), spaces and URL query strings (?igsh=…) are stripped. A q with no usable username characters is 400 BAD_REQUEST. Not a niche keyword search."
},
"cache": {
"type": "boolean",
"description": "Serve from the 24h shared cache when available (0 credits on hit). Default true — set false to always fetch fresh."
}
},
"additionalProperties": false
}Is this Instagram sound trending? Reels that use it + isTrendingInClips / trendRank / rich music{}. Costs ~28 credits (1.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
| audioId* | string | Instagram audio/music ID or full audio URL, e.g. 27919946310946207. |
{
"type": "object",
"required": [
"audioId"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
},
"audioId": {
"type": "string",
"description": "Instagram audio/music ID or full audio URL, e.g. 27919946310946207."
}
},
"additionalProperties": false
}Native tag feed first, slower fallback paths on a miss. Max 50. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Hashtag without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 50). Flat 2 credits per call. |
| datePosted | string | last_24_hours | last_week | last_month | last_year (aliases: today, this_week, this_month, this_year). |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Hashtag without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 50). Flat 2 credits per call."
},
"datePosted": {
"type": "string",
"description": "last_24_hours | last_week | last_month | last_year (aliases: today, this_week, this_month, this_year)."
}
},
"additionalProperties": false
}Get an AI summary of any Instagram Reel — a short paragraph plus key points, without watching the video. Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | ISO code, e.g. "tr": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "ISO code, e.g. \"tr\": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary."
}
},
"additionalProperties": false
}Posts that tag an Instagram account — author verified/avatar when available, staleFeed when Instagram only exposes an archive. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 1 credit per call. |
| cursor | string | Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram profile URL, @handle, or username, e.g. https://instagram.com/username/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 1 credit per call."
},
"cursor": {
"type": "string",
"description": "Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Turn any Instagram Reel's speech into text — the full transcript plus timestamped segments, ready for search, subtitles, or AI pipelines. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Instagram Reel URL, e.g. https://instagram.com/reel/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}Cache-first trending Reels. Feed outage → labelled country hashtag-clips stand-in (listing field), never a silent swap. Max 50. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Successful calls bill even on cache hits.
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Default true (cache-first): serve the per-country response cache when present (TTL 4 hours). Every successful call costs 2 credits — including cache hits. Set false to force a live scrape (measured miss 45–75s, hard-capped at 110s). Raise client timeouts above 90s — n8n/Make defaults will fail a miss. The fresh result still refreshes the cache. |
| limit | integer | Max items to return (default 10, max 50). Flat 2 credits per call. |
| country | string | Country for Reels localization — full name or ISO code (e.g. 'United States', 'US', 'Turkey', 'TR'). Default United States. Unsupported values return 400 with supportedCountries[]. |
{
"type": "object",
"properties": {
"cache": {
"type": "boolean",
"description": "Default true (cache-first): serve the per-country response cache when present (TTL 4 hours). Every successful call costs 2 credits — including cache hits. Set false to force a live scrape (measured miss 45–75s, hard-capped at 110s). Raise client timeouts above 90s — n8n/Make defaults will fail a miss. The fresh result still refreshes the cache."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 10, max 50). Flat 2 credits per call."
},
"country": {
"type": "string",
"description": "Country for Reels localization — full name or ISO code (e.g. 'United States', 'US', 'Turkey', 'TR'). Default United States. Unsupported values return 400 with supportedCountries[]."
}
},
"additionalProperties": false
}Get a Kick clip — source, 7d clip cache, fallback paths on a miss. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Kick clip URL for one enriched clip (e.g. https://kick.com/{channel}/clips/clip_…), or channel input for recent clips[]: kick.com/{name}, kick.com/@{name}, @{name}, or {name}. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| limit | integer | Channel mode only — max recent clips to return (default 30, max 100). Ignored when url is a clip. Flat 1 credit. No cursor — Kick returns a single page. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Kick clip URL for one enriched clip (e.g. https://kick.com/{channel}/clips/clip_…), or channel input for recent clips[]: kick.com/{name}, kick.com/@{name}, @{name}, or {name}. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Channel mode only — max recent clips to return (default 30, max 100). Ignored when url is a clip. Flat 1 credit. No cursor — Kick returns a single page."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Komi link-in-bio → identity, socials{} (incl. website), content LINK/PRODUCT rows with price/currency. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Komi page URL or username, e.g. https://komi.io/kimkardashian or https://kimkardashian.komi.io/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Komi page URL or username, e.g. https://komi.io/kimkardashian or https://kimkardashian.komi.io/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Single Kwai video — caption ("" when none), hashtags[], author, mp4 (2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Kwai video URL, e.g. https://www.kwai.com/@topfilmeseseriesnatv/video/5240932700689736196. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Kwai video URL, e.g. https://www.kwai.com/@topfilmeseseriesnatv/video/5240932700689736196. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Fetch Kwai profile — display name, bio, counts, and verification as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Kwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Kwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Kwai profile posts — caption ("" when none), engagement, mp4 + transcript (~1 credit/post). Costs ~20 credits (1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Kwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max posts to return (1–200). Default 20. ~1 credit per post returned (min 2). |
| cursor | string | Opaque pagination cursor from the previous nextCursor. Pages within posts from one profile fetch. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Kwai profile URL or @handle, e.g. https://www.kwai.com/@topfilmeseseriesnatv. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max posts to return (1–200). Default 20. ~1 credit per post returned (min 2)."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor from the previous nextCursor. Pages within posts from one profile fetch."
}
},
"additionalProperties": false
}lnk.bio → id, socials{}, titled links[], website/email/whatsapp, other[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Linkbio (lnk.bio) page URL or username, e.g. https://lnk.bio/charlidamelio. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Linkbio (lnk.bio) page URL or username, e.g. https://lnk.bio/charlidamelio. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}One LinkedIn Ad Library ad by ID. LinkedIn withholds Ran-from / impressions / targeting on most creatives — those keys are omitted, not 404. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | LinkedIn Ad Library URL or numeric ad ID (also accepts urn:li:sponsoredCreative:ID). Inputs that are neither numeric nor an ad-library detail URL are a definitive 400. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "LinkedIn Ad Library URL or numeric ad ID (also accepts urn:li:sponsoredCreative:ID). Inputs that are neither numeric nor an ad-library detail URL are a definitive 400. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}LinkedIn publishes run dates, impressions and targeting only on a subset of creatives. Search is the SERP card; source is native. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q | string | Advertiser / account owner name (min 2 when used). Provide q/company, keyword, or companyId. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). One LinkedIn SERP page is ~25 cards — when limit is higher, further pages are pulled automatically within the request's time budget, so limit=50 fills to 50 when LinkedIn has the ads (hasMore + nextCursor cover the rest). Flat 2 credits per call on the native path; the extended fallback bills ~3.5 credits per returned ad. Response `source` is native or extended so you can see which price applied. |
| cursor | string | Pagination token from paginationToken / nextCursor. |
| company | string | Alias of q — advertiser / account owner name. |
| country | string | Single ISO country code. Default US. Ignored when countries is set. Non-ISO codes are a definitive 400 INVALID_COUNTRY — LinkedIn would otherwise answer an empty result set as if the filter worked. |
| endDate |
Company page for B2B intel — specialties, similarPages, employeeCount, founded, slogan, cover. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | LinkedIn company URL, e.g. https://www.linkedin.com/company/shopify. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "LinkedIn company URL, e.g. https://www.linkedin.com/company/shopify. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}The recent posts a company page shows logged-out visitors (about 10), with engagement{likes,comments}. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | LinkedIn company URL, e.g. https://linkedin.com/company/slug. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Only the ~10 posts the public page shows are available. Flat 1 credit. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 5). A null nextCursor means the end of the list. Only the recent posts LinkedIn shows logged-out visitors (about 10) are available. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "LinkedIn company URL, e.g. https://linkedin.com/company/slug. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Only the ~10 posts the public page shows are available. Flat 1 credit."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 5). A null nextCursor means the end of the list. Only the recent posts LinkedIn shows logged-out visitors (about 10) are available."
}
},
"additionalProperties": false
}Get a LinkedIn post — text, author, reactions, and comments count as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | LinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "LinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}LinkedIn post text as a transcript — paragraph segments, timingSource none. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | LinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "LinkedIn post or activity URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Public LinkedIn person profile — what a logged-out visitor sees: name, headline, location, about. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | LinkedIn profile URL, e.g. https://www.linkedin.com/in/paul-martin-a5aa98. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "LinkedIn profile URL, e.g. https://www.linkedin.com/in/paul-martin-a5aa98. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Keyword search of public LinkedIn posts — offset cursor, ceiling 50. Costs ~16 credits (0.8/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query or keywords (min 2 characters). |
| sort | string | relevance (default, search-engine rank — dates can span years) or date (found posts newest first). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 50). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20). A null nextCursor means the end of the list (max 50 posts). |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search query or keywords (min 2 characters)."
},
"sort": {
"type": "string",
"description": "relevance (default, search-engine rank — dates can span years) or date (found posts newest first)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 50). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 20). A null nextCursor means the end of the list (max 50 posts)."
}
},
"additionalProperties": false
}Linkme profile → bio, profileVisitCount, featured links, webLinks, email/infoLinks, stripeStatus. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Linkme profile URL or username, e.g. https://link.me/danucd or danucd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Linkme profile URL or username, e.g. https://link.me/danucd or danucd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Link-in-bio → creator graph: typed links, socialAccounts{} that feed TikTok/Instagram/Spotify/SoundCloud, email, verticals. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Linktree profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Linktree profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Pillar link-in-bio → identity, socials{}, links[] with per-link clicks, products[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Pillar page URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Pillar page URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Pins on a Pinterest board — saves, imageOriginal, destinationUrl, top-level author. ~0.5 credits/pin. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Pinterest board URL (.../username/board-name/), not a /pin/ URL. Example: https://www.pinterest.com/potterybarn/rustic-lodge-lookbook/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Pinterest board URL (.../username/board-name/), not a /pin/ URL. Example: https://www.pinterest.com/potterybarn/rustic-lodge-lookbook/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100)."
}
},
"additionalProperties": false
}Get a Pinterest pin — title, description, link, board, origin creator, and engagement as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Pinterest pin URL, e.g. https://pinterest.com/pin/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Pinterest pin URL, e.g. https://pinterest.com/pin/ID/. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Keyword pin search — offset cursor, SERP window 40. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keywords or search query (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the SERP window (max 40). |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keywords or search query (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the SERP window (max 40)."
}
},
"additionalProperties": false
}Boards on a Pinterest profile — pinCount, coverImage (474x), privacy, sections. Board followers when scoped. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Pinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (max 200). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Pinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (max 200)."
}
},
"additionalProperties": false
}Pins from a Pinterest profile — offset cursor, pidgets window ~100. Costs ~13 credits (0.5/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Pinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Billed per result. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Pinterest profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Billed per result."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (numeric offset, e.g. 25). A null nextCursor means the end of the retrievable window (pidgets ~100)."
}
},
"additionalProperties": false
}Flat Reddit comment threads with depth/parentId and the parent post in one call. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Reddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Reddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Get a Reddit post — title, body, score, comments count, subreddit, and author as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Reddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Reddit post URL, e.g. https://reddit.com/r/sub/comments/ID/... The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Written post text — title, body and top comments. Not a speech transcript. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Reddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 200). Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Reddit post URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 200). Flat 2 credits per call."
}
},
"additionalProperties": false
}Reddit site-wide post search — sort + timeframe + cursor, score/upvoteRatio, authorFullname. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keyword or phrase to search Reddit posts site-wide (min 2 characters). |
| sort | string | relevance (default) | new | top | hot | comments (alias: comment_count). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| timeframe | string | For sort=top or comments: hour | day | week | month | year | all (default all). |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keyword or phrase to search Reddit posts site-wide (min 2 characters)."
},
"sort": {
"type": "string",
"description": "relevance (default) | new | top | hot | comments (alias: comment_count)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
},
"timeframe": {
"type": "string",
"description": "For sort=top or comments: hour | day | week | month | year | all (default all)."
}
},
"additionalProperties": false
}Subreddit card — id (t5_…), weekly visitors and contributions, rules[], ISO createdAt. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Subreddit URL, r/name, or bare name (case-insensitive), e.g. r/technology or AskReddit. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Subreddit URL, r/name, or bare name (case-insensitive), e.g. r/technology or AskReddit. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}List posts from a subreddit with sort, timeframe, and cursor pagination — title, score, upvote ratio, flair, and more. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| sort | string | Feed sort: best, hot, new (default), top, or rising. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| timeframe | string | For sort=top: hour, day (default), week, month, year, or all. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"sort": {
"type": "string",
"description": "Feed sort: best, hot, new (default), top, or rising."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
},
"timeframe": {
"type": "string",
"description": "For sort=top: hour, day (default), week, month, year, or all."
}
},
"additionalProperties": false
}Search posts inside one subreddit — not subreddit discovery. Same sort/timeframe as site-wide Search. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keywords or search query (min 2 characters). |
| url* | string | Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| sort | string | relevance (default) | new | top | hot | comments (alias: comment_count). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| timeframe | string | For sort=top or comments: hour | day | week | month | year | all (default all). |
Rumble channel uploads — lean streams[{url,type}]; call video-details for rendition meta. Costs ~12 credits (0.6/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Rumble channel URL, e.g. https://rumble.com/c/name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Rumble channel URL, e.g. https://rumble.com/c/name. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
}
},
"additionalProperties": false
}Rumble top-level comments — publishedAt ISO-8601 UTC from title= on the comment time link. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
}
},
"additionalProperties": false
}Rumble keyword search — same video card shape as channel-videos (type, durationSeconds + durationText, UTC publishedAt). Costs ~12 credits (0.6/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keywords or search query (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keywords or search query (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
}
},
"additionalProperties": false
}Rumble video metadata — uniform streams[] with rendition meta, captions[], audioStreams. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Rumble published captions as timed segments — parses the .vtt from video-details (not speech-to-text). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Rumble video URL, e.g. https://rumble.com/vXXXX-title.html. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}Snapchat profile — stable identity card, millisecond timestamps, mediaType image/video (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Snapchat username or profile URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Snapchat username or profile URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}SoundCloud artist — handle + name, subscriptionTier, externalLinks, verified (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Artist track list — opaque cursor, native-window when the api-v2 page ends (2 credits; empty is 0). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Flat 2 credits per call. |
| cursor | string | Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not edit or invent values. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "SoundCloud artist profile URL or username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not edit or invent values."
}
},
"additionalProperties": false
}SoundCloud track — plays/likes/license, tags[], nested artist{}, streamUrl when streamable (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | SoundCloud track URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "SoundCloud track URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Spotify album — tracks[] with playCount, joinable artists[], releaseDate, explicit (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| raw | boolean | Include the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape. |
| url* | string | Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"raw": {
"type": "boolean",
"description": "Include the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape."
},
"url": {
"type": "string",
"format": "uri",
"description": "Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Spotify artist — followers, monthlyListeners, worldRank, topCities, topTracks with playCount, concerts, and related artists (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| raw | boolean | Include the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape (~80% of the old response body). |
| url* | string | Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"raw": {
"type": "boolean",
"description": "Include the upstream GraphQL payload as data.raw. Default false — omit unless you need fields not in the normalized shape (~80% of the old response body)."
},
"url": {
"type": "string",
"format": "uri",
"description": "Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Spotify podcast show — publisher, rating, topics, explicit flag, and totalEpisodes as clean JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Podcast episode archive — previewUrl, releaseDate, explicit, cursor pagination (flat 2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| raw | boolean | Include slimmed per-episode upstream payload as episodes[].raw. Default false. visualIdentity / playedState / podcastV2 are never included. |
| url* | string | Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 50). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"raw": {
"type": "boolean",
"description": "Include slimmed per-episode upstream payload as episodes[].raw. Default false. visualIdentity / playedState / podcastV2 are never included."
},
"url": {
"type": "string",
"format": "uri",
"description": "Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 50). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Search Spotify — canonical spotify: URIs, explicit, fetchedAt (flat 2 credits). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Search term (min 2 chars). |
| raw | boolean | Include per-result upstream payload as results[].raw. Default false. Pathfinder GraphQL vs fallback-path shapes differ — see FAQ. |
| type | string | Result kind: tracks (default), albums, artists, podcasts, or episodes. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 50). Flat 2 credits per call. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search term (min 2 chars)."
},
"raw": {
"type": "boolean",
"description": "Include per-result upstream payload as results[].raw. Default false. Pathfinder GraphQL vs fallback-path shapes differ — see FAQ."
},
"type": {
"type": "string",
"description": "Result kind: tracks (default), albums, artists, podcasts, or episodes."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 50). Flat 2 credits per call."
}
},
"additionalProperties": false
}Spotify track — playCount, joinable artists[]/album{}, explicit, releaseDate (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| raw | boolean | Include the upstream GraphQL payload as data.raw. Default false — getTrack embeds bulky artist discography. |
| url* | string | Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"raw": {
"type": "boolean",
"description": "Include the upstream GraphQL payload as data.raw. Default false — getTrack embeds bulky artist discography."
},
"url": {
"type": "string",
"format": "uri",
"description": "Spotify URL, URI, or ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Threads post — engagement (views when exposed), comments[], relatedPosts[], threadId/isReply. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Threads post URL, e.g. https://threads.net/@user/post/CODE. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Threads post URL, e.g. https://threads.net/@user/post/CODE. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Threads profile — displayName, private/isPrivate, bioLinks (Meta verified), isThreadsOnlyUser, transparencyLabel, bioFragments, HD avatars (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Threads profile URL or @handle, e.g. https://threads.net/@username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Threads profile URL or @handle, e.g. https://threads.net/@username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Threads keyword search — posts with engagement + media. orderBy relevant | post_dated | engagement. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keyword or phrase to search public Threads posts (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Flat 2 credits per call. |
| orderBy | string | Sort the fetched page: relevant (default, Meta Top / similar to query), post_dated (newest publishedAt first), or engagement (likes+replies+reposts+quotes+views). Unknown values are 400. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keyword or phrase to search public Threads posts (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Flat 2 credits per call."
},
"orderBy": {
"type": "string",
"description": "Sort the fetched page: relevant (default, Meta Top / similar to query), post_dated (newest publishedAt first), or engagement (likes+replies+reposts+quotes+views). Unknown values are 400."
}
},
"additionalProperties": false
}Threads user discovery from keyword search — id, handle, avatar, verified. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keyword to find Threads users / creators (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Flat 1 credit per call. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keyword to find Threads users / creators (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 1 credit per call."
}
},
"additionalProperties": false
}Recent Threads posts — engagement{views,likes,replies,reposts,quotes}, threadId/isReply. Flat 2 credits. source + timings. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Threads profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Threads exposes only a short window of recent public posts on this surface. limit caps what you receive; it cannot increase what Threads returns. Flat 2 credits on every successful path (native and extended). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Threads profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Threads exposes only a short window of recent public posts on this surface. limit caps what you receive; it cannot increase what Threads returns. Flat 2 credits on every successful path (native and extended)."
}
},
"additionalProperties": false
}One TikTok Commercial Content Library ad by ID — calendar-day dates, always 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok Ad Library URL or numeric ad ID. Inputs with no extractable numeric ID are a definitive 400. An ID TikTok's library positively reports as nonexistent is a definitive 404 AD_NOT_FOUND (ads outside the EU/EEA+UK+CH never enter the library, and entries expire one year after last impression). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| country | string | Two-letter ISO country code. Default GB. Only EU/EEA + UK + CH are covered by TikTok's library; other codes return 400 UNSUPPORTED_REGION. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok Ad Library URL or numeric ad ID. Inputs with no extractable numeric ID are a definitive 400. An ID TikTok's library positively reports as nonexistent is a definitive 404 AD_NOT_FOUND (ads outside the EU/EEA+UK+CH never enter the library, and entries expire one year after last impression). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code. Default GB. Only EU/EEA + UK + CH are covered by TikTok's library; other codes return 400 UNSUPPORTED_REGION."
}
},
"additionalProperties": false
}Search TikTok Commercial Content Library — relevance-filtered, uniform null schema (2 credits native, 5 via fallback). Costs 2 credits (5 via fallback path). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Keyword or advertiser to search TikTok Commercial Content Library (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Does not change the price: 2 credits native, 5 via the fallback path, 0 when empty. |
| match | string | Keyword token mode: "any" (default, OR whole-word) or "all" (AND). hair ≠ wheelchair. Literal hits lead; already-fetched SERP ads fill behind them up to limit (matchedFrom [] = ranked fill). Empty results are free. |
| country | string | Two-letter ISO country code (e.g. GB, DE, FR). Default GB. TikTok's Commercial Content Library only covers the EU/EEA, the UK and Switzerland (32 countries) — other codes (US, SA, …) return 400 UNSUPPORTED_REGION with the supported list; TikTok has no ad-library data for them. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keyword or advertiser to search TikTok Commercial Content Library (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Does not change the price: 2 credits native, 5 via the fallback path, 0 when empty."
},
"match": {
"type": "string",
"description": "Keyword token mode: \"any\" (default, OR whole-word) or \"all\" (AND). hair ≠ wheelchair. Literal hits lead; already-fetched SERP ads fill behind them up to limit (matchedFrom [] = ranked fill). Empty results are free."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code (e.g. GB, DE, FR). Default GB. TikTok's Commercial Content Library only covers the EU/EEA, the UK and Switzerland (32 countries) — other codes (US, SA, …) return 400 UNSUPPORTED_REGION with the supported list; TikTok has no ad-library data for them."
}
},
"additionalProperties": false
}TikTok Creative Center Top Ads — one ~20-row leaderboard page, not a library search (flat 2; ~1/ad on the fallback path). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q | string | Optional keyword that ranks the one ~20-row leaderboard page — not a library search. Case-insensitive whole-word hits on title/brandName/industry/objective (hair ≠ wheelchair) come first; the rest of TikTok's keyword-ranked page follows as fill (matchedFrom [] on those ads, rankedFill in the envelope). There is no tags field. advertiser.name is often null in the default US market. Envelope candidatesScanned is the pre-filter pool size. For a known advertiser, use /tiktok/ad-details by ad id. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 20). One Creative Center leaderboard page is ~20 rows; limit only trims that pool — it cannot scan more candidates. Flat 2 credits on the native path; the fallback path ~1 credit per returned ad (min 2). |
| match | string | Keyword token mode: "any" (default, OR) or "all" (AND). Zero whole-word hits still return TikTok's keyword-ranked page as matchBasis=ranked (literalMatches=0). |
| period | integer | Lookback window in days: 7, 30, or 180. Default 30. |
| country | string |
Audience country + language mix for a TikTok creator — engagement sample, not a follower census. Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| videos | integer | How many recent videos to sample comments from: 12 (default, 3 credits), 30 (5 credits), or 60 (8 credits). |
| countriesLimit | integer | Max countries in audienceLocations; remainder folds into other{count,percentage}. Omit for the full list (other is omitted when unused). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"videos": {
"type": "integer",
"minimum": 1,
"description": "How many recent videos to sample comments from: 12 (default, 3 credits), 30 (5 credits), or 60 (8 credits)."
},
"countriesLimit": {
"type": "integer",
"minimum": 1,
"description": "Max countries in audienceLocations; remainder folds into other{count,percentage}. Omit for the full list (other is omitted when unused)."
}
},
"additionalProperties": false
}Resolve a TikTok @handle to id + secUid — createTime, ttSeller, bioLink, decoded privacy flags. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| raw | boolean | Set true to include TikTok's upstream user/statsV2 blob under raw, plus createTimeUnix (unix twin of createTime). Default false — curated fields only. |
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"raw": {
"type": "boolean",
"description": "Set true to include TikTok's upstream user/statsV2 blob under raw, plus createTimeUnix (unix twin of createTime). Default false — curated fields only."
},
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Latest videos from a TikTok profile, cursor-paginated. Flat 2 credits; failures are 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | How many of the creator's latest videos to return on this page (default 20, max 200). Newest first. Flat 2 credits per successful call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (TikTok's max_cursor timestamp, e.g. 1783614676000). A null nextCursor means the end of the list. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "How many of the creator's latest videos to return on this page (default 20, max 200). Newest first. Flat 2 credits per successful call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (TikTok's max_cursor timestamp, e.g. 1783614676000). A null nextCursor means the end of the list."
}
},
"additionalProperties": false
}Replies under a TikTok comment — same authorId/authorSecUid/commentLanguage shape as comments. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value from the previous response. |
| commentId* | string | ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id. |
{
"type": "object",
"required": [
"url",
"commentId"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value from the previous response."
},
"commentId": {
"type": "string",
"description": "ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id."
}
},
"additionalProperties": false
}TikTok comments — clean schema plus authorName, stable authorId/authorSecUid and commentLanguage for listening loops. Unresolvable videos are 404 at 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (a numeric offset, e.g. 50). A null nextCursor means the end of the comments. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response (a numeric offset, e.g. 50). A null nextCursor means the end of the comments."
}
},
"additionalProperties": false
}Check whether a TikTok creator is live right now and get the stream URLs (CMAF/DASH + FLV, HLS when TikTok exposes it) — one GET with an @handle, 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Identical to TikTok Live (isLive, creator.id/secUid, streamQualities hls/cmaf). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}List TikTok videos that use a specific sound — caption, author, exact engagement, canonical hashtags, and mentions, with cursor pagination. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Most videos to return (default 20, 1–50; outside that range is a 400). TikTok serves this feed in short pages, so a call can return fewer than limit with a nextCursor to continue. Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. hasMore is true only when nextCursor is present. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Most videos to return (default 20, 1–50; outside that range is a 400). TikTok serves this feed in short pages, so a call can return fewer than limit with a nextCursor to continue. Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. hasMore is true only when nextCursor is present."
}
},
"additionalProperties": false
}Creative Center creators + createTime / bioLinkRisk / ttSeller hydrate for partnership vetting. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| page | integer | Creative Center page (default 1). |
| sort | string | follower, engagement, or popularity. Default follower. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| limit | integer | Max items to return (default 20, max 100). Flat 2 credits per call. |
| country | string | Two-letter ISO country code. Default US. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
| follower_count | string | Optional range on the For You ranking: 10k-100k, 100k-1m, 1m-10m, >10m. |
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Creative Center page (default 1)."
},
"sort": {
"type": "string",
"description": "follower, engagement, or popularity. Default follower."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 2 credits per call."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code. Default US."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
},
"follower_count": {
"type": "string",
"description": "Optional range on the For You ranking: 10k-100k, 100k-1m, 1m-10m, >10m."
}
},
"additionalProperties": false
}Related TikTok hashtags — Creative Center chart when it answers, otherwise a disclosed niche fallback. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| page | integer | Creative Center page (default 1). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Flat 2 credits per call. |
| query | string | Optional niche seed for co-occurrence + challenge/detail enrich. Omit, or pass trending, to try the Creative Center chart (10s cap); a miss falls through to related tags for fyp (source=niche_fallback) and opens a chart circuit for that country/period/page/industry. Later calls with the same chart parameters skip the chart (chartStatus=skipped_circuit_open) until the cooldown expires. Any other value skips the chart. |
| period | integer | Lookback days: 7, 30, or 120 (180→120). Default 7. |
| sortBy | string | Chart sort: popular (default). |
| country | string | Two-letter ISO country for the Creative Center chart. Default US. |
| industryId |
Find out where a TikTok creator is likely based and what language they use — country, language, stable ids, and core profile stats. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| raw | boolean | Set true to include TikTok's upstream user/statsV2 blob under raw. Default false — curated fields only. |
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 7d response cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"raw": {
"type": "boolean",
"description": "Set true to include TikTok's upstream user/statsV2 blob under raw. Default false — curated fields only."
},
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 7d response cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Videos from TikTok's /tag/{name} challenge feed — not keyword or username search. Cursor + hasMore. Costs ~14 credits (0.7/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Single hashtag token for the /tag/{name} challenge feed, with or without # (min 2). Spaces are 400 — use /v1/tiktok/top-search for a keyword query. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Billed per result. |
| cursor | integer | Pagination offset. Leave at 0 (or omit) for the first page; then pass the nextCursor value returned in the previous response. A null nextCursor means the end of the results. |
| region | string | Two-letter ISO 3166-1 country code. Default US. Accepted for compatibility; does not filter results by country. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Single hashtag token for the /tag/{name} challenge feed, with or without # (min 2). Spaces are 400 — use /v1/tiktok/top-search for a keyword query."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Billed per result."
},
"cursor": {
"type": "integer",
"minimum": 1,
"description": "Pagination offset. Leave at 0 (or omit) for the first page; then pass the nextCursor value returned in the previous response. A null nextCursor means the end of the results."
},
"region": {
"type": "string",
"description": "Two-letter ISO 3166-1 country code. Default US. Accepted for compatibility; does not filter results by country."
}
},
"additionalProperties": false
}Get the autocomplete terms TikTok suggests in its search bar for a keyword — the real phrases people search, ranked, so you can find trending queries and long-tail keyword ideas. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Seed keyword to expand into autocomplete suggestions, e.g. skincare. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Flat 2 credits per call. |
| country | string | Two-letter ISO country code that localizes the suggestions to a market, e.g. US, GB, DE. Default US. |
| language | string | Interface language for the suggestions, e.g. en-US or de-DE. Default en-US. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Seed keyword to expand into autocomplete suggestions, e.g. skincare."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 2 credits per call."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code that localizes the suggestions to a market, e.g. US, GB, DE. Default US."
},
"language": {
"type": "string",
"description": "Interface language for the suggestions, e.g. en-US or de-DE. Default en-US."
}
},
"additionalProperties": false
}Search TikTok users — distinct creators only, id + secUid, per-counter isApproximate flags, cursor pagination. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query matched against usernames, display names and bios (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Flat 1 credit per call. |
| cursor | string | Pagination cursor. Omit (or pass 0) for the first page; then pass the nextCursor value from the previous response verbatim — it carries the search session, not just an offset. A null nextCursor means the end of the results. |
| fallback | boolean | Deprecated — no effect, removed on 2026-12-17. Sending it adds an X-Captapi-Warning response header. When native search is unavailable the response is an empty degraded page (0 credits). |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search query matched against usernames, display names and bios (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 1 credit per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Omit (or pass 0) for the first page; then pass the nextCursor value from the previous response verbatim — it carries the search session, not just an offset. A null nextCursor means the end of the results."
},
"fallback": {
"type": "boolean",
"description": "Deprecated — no effect, removed on 2026-12-17. Sending it adds an X-Captapi-Warning response header. When native search is unavailable the response is an empty degraded page (0 credits)."
}
},
"additionalProperties": false
}PDP — price (sku_min when guest min is *), sold vs stock, seller id/url, images[]. Unresolved URL is 404 at 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok Shop product URL, e.g. https://shop.tiktok.com/view/product/1731410956394792439?region=BR or https://www.tiktok.com/shop/pdp/1731098552908944370. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| region | string | Two-letter market region (default US). A region= or oec_region= query on the product URL wins over this default so a BR share URL is not fetched as US. Echoed as data.region. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok Shop product URL, e.g. https://shop.tiktok.com/view/product/1731410956394792439?region=BR or https://www.tiktok.com/shop/pdp/1731098552908944370. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"region": {
"type": "string",
"description": "Two-letter market region (default US). A region= or oec_region= query on the product URL wins over this default so a BR share URL is not fetched as US. Echoed as data.region."
}
},
"additionalProperties": false
}TikTok Shop product reviews — star rating, text, SKU variant, verified purchase, country, and review photos. Costs ~45 credits (2.25/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok Shop product URL, e.g. https://www.tiktok.com/shop/pdp/1731962298839634826. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok Shop product URL, e.g. https://www.tiktok.com/shop/pdp/1731962298839634826. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
}
},
"additionalProperties": false
}Store catalog with shopInfo (sold/followers/rating) + products priced with sold, rating, typed discount. Costs 2 credits (fallback: 2.8/product, min 2). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok Shop store URL with numeric shop id, e.g. https://www.tiktok.com/shop/store/goli-nutrition/7495794203056835079. A slug-only /shop/store/{name} URL is a definitive 400 — TikTok's catalog SSR is keyed by shop id. Get the full URL from /v1/tiktok-shop/user-showcase or a product's seller.url. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). 2 credits when served natively (limit ≤ 30); above 30, or when the native page misses, the fallback path bills 2.8 credits per product returned, rounded up, minimum 2. |
| region | string | Two-letter market region (default US). Non-US coverage depends on TikTok exposing that shop in the selected region — empty results outside the US are often a platform limit, not a Captapi bug. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok Shop store URL with numeric shop id, e.g. https://www.tiktok.com/shop/store/goli-nutrition/7495794203056835079. A slug-only /shop/store/{name} URL is a definitive 400 — TikTok's catalog SSR is keyed by shop id. Get the full URL from /v1/tiktok-shop/user-showcase or a product's seller.url. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). 2 credits when served natively (limit ≤ 30); above 30, or when the native page misses, the fallback path bills 2.8 credits per product returned, rounded up, minimum 2."
},
"region": {
"type": "string",
"description": "Two-letter market region (default US). Non-US coverage depends on TikTok exposing that shop in the selected region — empty results outside the US are often a platform limit, not a Captapi bug."
}
},
"additionalProperties": false
}TikTok Shop keyword search — priced products with sold, rating/reviews, typed discount, seller id. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Product search query (min 2 characters), e.g. phone case. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 10, max 10). Flat 2 credits per call. |
| region | string | Two-letter market region for the search (default US). Echoed on the response as data.region — not a creator home country. Native search is a SERP window (not TikTok's full catalog); compare requested to serpHits / windowMax. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Product search query (min 2 characters), e.g. phone case."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 10, max 10). Flat 2 credits per call."
},
"region": {
"type": "string",
"description": "Two-letter market region for the search (default US). Echoed on the response as data.region — not a creator home country. Native search is a SERP window (not TikTok's full catalog); compare requested to serpHits / windowMax."
}
},
"additionalProperties": false
}Creator Shop showcase — affiliate shelf products with per-product sold, rating, typed discount, and seller name/url. Costs ~45 credits (2.25/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Billed per result. |
| username* | string | TikTok username, @handle, or profile URL, e.g. jeffreestar or https://www.tiktok.com/@jeffreestar. |
{
"type": "object",
"required": [
"username"
],
"properties": {
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Billed per result."
},
"username": {
"type": "string",
"description": "TikTok username, @handle, or profile URL, e.g. jeffreestar or https://www.tiktok.com/@jeffreestar."
}
},
"additionalProperties": false
}TikTok sound metadata — usageCount, artists[{id,secUid,handle}], audio{bpm,loudness,beats}, commerce rights (1 credit; 2 via the fallback path). Costs 1 credit (2 via fallback path). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Summarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | ISO code, e.g. "tr": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "ISO code, e.g. \"tr\": pins the speech language and sets the summary output language. Defaults to auto-detect + English summary."
}
},
"additionalProperties": false
}TikTok Top/General search — videos and photo carousels when TikTok includes them, with contentType + images[]. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query or keywords (min 2 characters). |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| cursor | integer | Pagination cursor. Leave 0 for the first page; then pass nextCursor from the previous response. TikTok may return duplicates across pages. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search query or keywords (min 2 characters)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "integer",
"minimum": 1,
"description": "Pagination cursor. Leave 0 for the first page; then pass nextCursor from the previous response. TikTok may return duplicates across pages."
}
},
"additionalProperties": false
}Transcript Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Serve from the 24h shared cache when available (0 credits on hit). Default true — set false to always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Serve from the 24h shared cache when available (0 credits on hit). Default true — set false to always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}For You by default; pass orderBy/period/page for Creative Center popular videos (like/hot/comment/repost) with totalCount. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| page | integer | Creative Center page (default 1). page>1 triggers chart mode. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| period | integer | Lookback days: 7, 30, or 120 (180→120). Triggers chart mode. Every returned publishedAt is inside this window — a For You fallthrough is filtered the same way. |
| country | string | Two-letter ISO country (default US). For You: region-availability hint. Creative Center mode: chart market. |
| orderBy | string | Creative Center sort: hot (views), like, comment, or repost. Unknown values are 400. vv/views/plays are aliases of hot — the response echoes the public name. Setting this (or period / page>1) switches from For You to the popular-videos chart. On a For You fallthrough the same sort is applied locally. |
| countryCode | string | Alias of country. Wins when both are set. |
List a TikTok user's followers — id, secUid, createTime, region, language, cursor pagination. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 1 credit per call. |
| cursor | string | Pagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 1 credit per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response."
}
},
"additionalProperties": false
}List who a TikTok user follows — id, secUid, createTime, region, language, cursor pagination. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 1 credit per call. |
| cursor | string | Pagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "TikTok profile URL, @handle, or username, e.g. https://tiktok.com/@username. Not a YouTube channel URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 1 credit per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response."
}
},
"additionalProperties": false
}Get everything about one TikTok video from its URL — caption, view/like/comment/share/save counts, creator, sound, hashtags, and thumbnail. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public TikTok video URL, e.g. https://www.tiktok.com/@khaby.lame/video/7646812028874673439. Not a YouTube/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}One Truth — text, links[], card, reblog/quote chain, media.meta, externalVideoId. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Truth Social post URL or post ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Truth Social post URL or post ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Prominent public Truth Social profiles — isPrivate/bot/group, CP-F counts, avatar/banner. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Truth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Truth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Recent Truths — same post mapper as /post (links, card, reblog/quote, mentions). 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Truth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max posts to return (default 20, max 80). Truth Social's statuses page is ~20 items — a full page returns nextCursor. On the extended path hasMore can be true with nextCursor null (truncatedReason=single_page_only). Flat 2 credits. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Truth Social profile URL or @username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max posts to return (default 20, max 80). Truth Social's statuses page is ~20 items — a full page returns nextCursor. On the extended path hasMore can be true with nextCursor null (truncatedReason=single_page_only). Flat 2 credits."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Twitch clip — curator vs channel, signedVideoUrl, unwrapped token, relatedClips (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Twitch clip URL (clips.twitch.tv/<slug> or twitch.tv/<channel>/clip/<slug>). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Twitch clip URL (clips.twitch.tv/<slug> or twitch.tv/<channel>/clip/<slug>). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Twitch channel — handle + displayName, socials[], topClips, schedule preview, stream only when live (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Twitch channel schedule — startAt/endAt, title, game, isRecurring (0 credits when empty). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max schedule segments to return (default 50, max 100). Flat 1 credit per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max schedule segments to return (default 50, max 100). Flat 1 credit per call."
}
},
"additionalProperties": false
}Twitch channel VODs — lean rows, video-id cursor, filter/sort, top-level broadcaster{} (flat 2). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Flat 2 credits per call. Hard ceiling: first 100 matching videos only — deeper history is not available (windowMax=100). |
| cursor | string | Pagination cursor = last video id from the previous nextCursor. Leave empty for the first page. Pages the first 100 matching videos only (not a raw offset). |
| sortBy | string | TIME (default, newest first) or VIEWS. |
| filterBy | string | ARCHIVE | HIGHLIGHT | UPLOAD. Omit for all types — there is no default filter (unset filterBy is omitted, not null). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Twitch channel URL or username, e.g. https://www.twitch.tv/shroud. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 2 credits per call. Hard ceiling: first 100 matching videos only — deeper history is not available (windowMax=100)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor = last video id from the previous nextCursor. Leave empty for the first page. Pages the first 100 matching videos only (not a raw offset)."
},
"sortBy": {
"type": "string",
"description": "TIME (default, newest first) or VIEWS."
},
"filterBy": {
"type": "string",
"description": "ARCHIVE | HIGHLIGHT | UPLOAD. Omit for all types — there is no default filter (unset filterBy is omitted, not null)."
}
},
"additionalProperties": false
}X Community metadata — ISO createdAt, flat creator handle, isNsfw + bannerImage, rules[]. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | X community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "X community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Posts in an X Community — same 6-metric tweet shape as search. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | X community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 25, max 200). Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "X community URL (x.com/i/communities/ID) or community ID — not a tweet/status URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Flat 2 credits per call."
}
},
"additionalProperties": false
}X profile: verified + blue/legacy/identity, displayName, avatar/banner, tipjar→contact{}, expanded website. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Twitter/X profile URL or @handle, e.g. https://x.com/username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to use the 1-hour profile cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge for 1d–30d. |
| cacheMaxAge | string | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Twitter/X profile URL or @handle, e.g. https://x.com/username. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to use the 1-hour profile cache (0 credits on hit). Default false — always fetch fresh. Prefer cacheMaxAge for 1d–30d."
},
"cacheMaxAge": {
"type": "string",
"description": "Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL."
}
},
"additionalProperties": false
}Tweet text as a transcript — timingSource none (not speech-to-text). Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}One tweet as JSON — text, author (followers), likes/replies/retweets/quotes, media, ISO publishedAt. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public tweet URL, e.g. https://x.com/user/status/ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Most popular public tweets from a Twitter/X profile (~100 cap) — not chronological. Text, author, engagement, hashtags, media. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Twitter/X profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max tweets to return (default 20, max 200). Twitter's public surface usually caps around ~100 most popular posts — not chronological latest. Flat 2 credits per call. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Twitter/X profile URL or @handle. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max tweets to return (default 20, max 200). Twitter's public surface usually caps around ~100 most popular posts — not chronological latest. Flat 2 credits per call."
}
},
"additionalProperties": false
}AI transcription + summary of an uploaded file — transcript included; 1 credit/min + 1. Costs 1 credit/min +1. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| file* | string | Video or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes. |
| language | string | ISO-639-1 language hint, e.g. "en" or "tr". Omit to auto-detect. |
| translate | boolean | When true, translate speech to English before summarizing. Default false. |
| timestampGranularity | string | segment (default) or word. |
{
"type": "object",
"required": [
"file"
],
"properties": {
"file": {
"type": "string",
"description": "Video or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes."
},
"language": {
"type": "string",
"description": "ISO-639-1 language hint, e.g. \"en\" or \"tr\". Omit to auto-detect."
},
"translate": {
"type": "boolean",
"description": "When true, translate speech to English before summarizing. Default false."
},
"timestampGranularity": {
"type": "string",
"description": "segment (default) or word."
}
},
"additionalProperties": false
}AI transcription of an uploaded file — 1 credit/min; noSpeech=true and 0 credits when there is no speech. Costs 1 credit/min. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| file* | string | Video or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes. |
| language | string | ISO-639-1 language hint, e.g. "en" or "tr". Omit to auto-detect. |
| translate | boolean | When true, translate speech to English. Default false. |
| timestampGranularity | string | segment (default) or word — word-level timings when the transcription model exposes them. |
{
"type": "object",
"required": [
"file"
],
"properties": {
"file": {
"type": "string",
"description": "Video or audio file (multipart form field — use -F file=@path, not a query string). Max 200MB / 60 minutes."
},
"language": {
"type": "string",
"description": "ISO-639-1 language hint, e.g. \"en\" or \"tr\". Omit to auto-detect."
},
"translate": {
"type": "boolean",
"description": "When true, translate speech to English. Default false."
},
"timestampGranularity": {
"type": "string",
"description": "segment (default) or word — word-level timings when the transcription model exposes them."
}
},
"additionalProperties": false
}Speech-to-text for YouTube audio. Use it when a video has no captions — or when you want a transcript of what was actually spoken rather than YouTube's published captions. Priced per started minute of audio. Costs 2 credits/min of audio. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
| maxCredits | integer | Refuse before STT when estimatedCredits would exceed this (400 cost_exceeds_max, 0 credits). The estimate is on every success and, when the extract miss is retryable, as estimatedCreditsIfRetried. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
},
"maxCredits": {
"type": "integer",
"minimum": 1,
"description": "Refuse before STT when estimatedCredits would exceed this (400 cost_exceeds_max, 0 credits). The estimate is on every success and, when the extract miss is retryable, as estimatedCreditsIfRetried."
}
},
"additionalProperties": false
}YouTube channel stats — ISO country, createdAt date-only, real banner or null, quote-aware SEO tags, absolute links. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Channel playlists with cursor pagination — id, title, totalVideos, thumbnailUrl. Flat 2 credits/page. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Channel Shorts with cursor pagination — same row shape as channel-videos (exact publishedAt). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Channel Live tab only — liveStatus per row; 0 credits when hasLiveTab is false. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits when hasLiveTab is true; 0 credits when hasLiveTab is false. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits when hasLiveTab is true; 0 credits when hasLiveTab is false."
}
},
"additionalProperties": false
}Channel uploads with cursor pagination — exact publishedAt from reel_item_watch (same as channel-shorts). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| fast | boolean | Set true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"fast": {
"type": "boolean",
"description": "Set true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Replies under a top-level comment — parentReplyCount + cursor. Nested reply ids return 404. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| commentId* | string | ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id. |
{
"type": "object",
"required": [
"url",
"commentId"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
},
"commentId": {
"type": "string",
"description": "ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id."
}
},
"additionalProperties": false
}Get comments on any YouTube video — text, author, likes, and truncated publishedTimeApprox from the relative label, with cursor pagination (nextCursor + hasMore). Flat 2 credits per call; 0 when the video has comments turned off (commentsDisabled: true). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}One community post — list schema + commentCount trio + isEdited. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube community post URL (/post/Ugkx… or /community?lb=). Trailing whitespace is stripped. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube community post URL (/post/Ugkx… or /community?lb=). Trailing whitespace is stripped. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Community posts — channel{}, publishedTimeApprox, likeCountIsApproximate, linkedVideos[], cursor (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 1 credit per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 1 credit per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}Videos from youtube.com/hashtag/{name} — nested channel{}, viewCountIsApproximate. Not keyword search. Costs ~20 credits (1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Hashtag with or without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Returns a single window; use limit to size it. No cursor. Billed per result. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Hashtag with or without the # (min 2 characters). One token — spaces are 400 HASHTAG_HAS_SPACES."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Returns a single window; use limit to size it. No cursor. Billed per result."
}
},
"additionalProperties": false
}Playlist metadata only — title, channel{}, totalVideos, thumbnailUrl. No videos[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}Paginated playlist contents — cursor/nextCursor/hasMore, same row shape as channel-videos. Flat 2 credits/page. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| fast | boolean | Set true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "YouTube playlist URL, e.g. https://youtube.com/playlist?list=ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"fast": {
"type": "boolean",
"description": "Set true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}YouTube search with cursor pagination — typed hits, ids, canonical URLs, filters (2 credits/page, 0 when a page finds nothing). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q* | string | Search query or keywords (min 2 characters). |
| type | string | all | videos | shorts | channels | playlists. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 200). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| region | string | ISO country code for localized results (default US). |
| sortBy | string | relevance | views (alias: popular→views). date and rating answer 400 SORT_NOT_SUPPORTED: YouTube no longer orders search by upload date (use uploadDate) or by rating. With type=shorts only relevance is supported. |
| duration | string | any | under_4 | 4_20 | over_20. Applies to long-form videos (not Shorts). |
Comments on a YouTube Short — rejects long-form videos (≤3 min only). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 50, max 500). Flat 2 credits per call. |
| cursor | string | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 50, max 500). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
}
},
"additionalProperties": false
}YouTube Short metadata — same schema as Video Details, with isShort:true; long-form videos get HTTP 422. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}AI summary of a YouTube Short — rejects long-form videos (≤3 min only). Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}Transcript for a YouTube Short — rejects long-form videos (≤3 min only). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube Shorts URL, e.g. https://youtube.com/shorts/ID (≤3 min). Long-form videos return HTTP 422 — use the matching /v1/youtube/… endpoint instead. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}AI summary from YouTube's published captions — same source as /transcript. Flat 3 credits; caption-miss 404 is free. Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}YouTube's published captions with timestamps — not speech-to-text. Flat 1 credit; 404 is free. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| language | string | Preferred caption language as an ISO code, e.g. "en". Defaults to auto-detect. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"language": {
"type": "string",
"description": "Preferred caption language as an ISO code, e.g. \"en\". Defaults to auto-detect."
}
},
"additionalProperties": false
}YouTube Shorts recommendation sequence — fixed window per call (no cursor), not a global chart. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| q | string | Optional topic seed for the Shorts recommendation sequence. Omit (or pass trending/shorts) for the default reel feed — not a keyword search. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| limit | integer | Max items to return (default 20, max 100). Returns a single window; use limit to size it. No cursor. Flat 2 credits per call. |
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Optional topic seed for the Shorts recommendation sequence. Omit (or pass trending/shorts) for the default reel feed — not a keyword search."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Returns a single window; use limit to size it. No cursor. Flat 2 credits per call."
}
},
"additionalProperties": false
}YouTube video metadata + stats. Always includes degraded / degradedReason — retry when degraded is true. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
}
},
"additionalProperties": false
}SponsorBlock community segments — free while the CC BY-NC-SA commercial-use exception is pending. Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Argument | Type | Description |
|---|---|---|
| url* | string | Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble. |
| cache | boolean | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| minVotes | integer | Minimum SponsorBlock votes to keep a segment. Default 0 (drops community-rejected votes < 0). |
| categories | string | Comma-separated categories. Default sponsor,selfpromo,interaction. Also intro,outro,preview,music_offtopic,poi_highlight,filler. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Public YouTube video URL, e.g. https://youtube.com/watch?v=ID. Not a TikTok/Instagram/Facebook URL. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"minVotes": {
"type": "integer",
"minimum": 1,
"description": "Minimum SponsorBlock votes to keep a segment. Default 0 (drops community-rejected votes < 0)."
},
"categories": {
"type": "string",
"description": "Comma-separated categories. Default sponsor,selfpromo,interaction. Also intro,outro,preview,music_offtopic,poi_highlight,filler."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Bluesky profile URL, @handle, or handle, e.g. https://bsky.app/profile/handle.bsky.social. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 100). Billed per result."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor from the previous nextCursor. Leave empty for the first page. Do not invent a cursor from publishedAt — the feed is ordered by feed time (reposts sort by repost time)."
},
"filter": {
"type": "string",
"description": "Bluesky getAuthorFeed filter: posts_with_replies (default), posts_no_replies, posts_with_media, posts_and_author_threads, or posts_with_video. Controls replies/media/threads — not reposts. Use includeReposts=false to drop reposts."
},
"includeReposts": {
"type": "boolean",
"description": "When false, omit repost rows (reasonRepost). Default true — reposts are included and marked with isRepost / repostedBy / repostedAt."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "pageId from /search-companies (preferred), libraryUrl, vanity page URL (facebook.com/nike/), or Ad Library URL with view_all_page_id. Do not pass profileId from facebook.com/{digits}/ when it differs from pageId. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call on the native path; the extended fallback bills per returned ad."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous nextCursor. Pages through the current Meta HTML result batch."
},
"status": {
"type": "string",
"description": "Ad delivery status: ACTIVE (default), INACTIVE, or ALL. Use ACTIVE for \"what are they running now?\"."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY."
}
},
"additionalProperties": false
}| string |
| Two-letter ISO country code (e.g. US, GB, DE). Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY — Meta would otherwise ignore the code and search globally while echoing it back as if the filter worked. |
| sort_by | string | Meta sort mode: total_impressions or relevancy_monthly_grouped. |
| end_date | string | Only ads with delivery start on/before this date (YYYY-MM-DD). |
| platforms | string | Comma-separated publisher platforms to keep: FACEBOOK, INSTAGRAM, MESSENGER, AUDIENCE_NETWORK, THREADS. |
| media_type | string | Creative filter: ALL (default), IMAGE, VIDEO, MEME, IMAGE_AND_MEME, or NONE. |
| start_date | string | Only ads with delivery start on/after this date (YYYY-MM-DD). |
| search_type | string | keyword_unordered (default) or keyword_exact_phrase. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keyword, brand, or advertiser to search Meta Ad Library (min 2 characters)."
},
"trim": {
"type": "boolean",
"description": "When true, omit cards/images/videos typed arrays (media[] stays). Captapi payloads are already lean vs Meta nested snapshots."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous nextCursor. Pages through the current Meta HTML result batch."
},
"status": {
"type": "string",
"description": "Ad delivery status: ACTIVE (default), INACTIVE, or ALL. Use ACTIVE for \"what are they running now?\"."
},
"ad_type": {
"type": "string",
"description": "all (default) or political_and_issue_ads. Spend/impressions are typically only filled for political/issue ads."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code (e.g. US, GB, DE). Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY — Meta would otherwise ignore the code and search globally while echoing it back as if the filter worked."
},
"sort_by": {
"type": "string",
"description": "Meta sort mode: total_impressions or relevancy_monthly_grouped."
},
"end_date": {
"type": "string",
"description": "Only ads with delivery start on/before this date (YYYY-MM-DD)."
},
"platforms": {
"type": "string",
"description": "Comma-separated publisher platforms to keep: FACEBOOK, INSTAGRAM, MESSENGER, AUDIENCE_NETWORK, THREADS."
},
"media_type": {
"type": "string",
"description": "Creative filter: ALL (default), IMAGE, VIDEO, MEME, IMAGE_AND_MEME, or NONE."
},
"start_date": {
"type": "string",
"description": "Only ads with delivery start on/after this date (YYYY-MM-DD)."
},
"search_type": {
"type": "string",
"description": "keyword_unordered (default) or keyword_exact_phrase."
}
},
"additionalProperties": false
}| location | string | Alias of searchLocation. Prefer searchLocation. Either one is required. |
| maxPrice | integer | Maximum price in local currency units. |
| minPrice | integer | Minimum price in local currency units. |
| condition | string | new, like_new, good, fair (comma-separated ok). |
| radiusMiles | integer | Radius in miles: 1,2,5,10,20,40,60,80,100,250,500. Does not exclude nationwide shipped inventory. |
| availability | string | available | sold | all. |
| deliveryMethod | string | local_pickup | shipping | all. Shipped listings can appear nationwide outside radiusMiles — use local_pickup for nearby-only; rows expose isLocal / shipsOutsideRadius. |
| searchLocation* | string | Search-origin city or place name, e.g. 'Austin, TX'. Required — there is no default city. Echoed on the envelope and inside filters. Not listings[].location. Names that don't resolve to a real place are a definitive 400 UNKNOWN_LOCATION (Facebook would otherwise silently search an unrelated metro) — /v1/facebook/marketplace-location-search finds valid ones. |
| daysSinceListed | string | Facebook calendar-day recency: 1 = since the start of yesterday (not a rolling 24 hours), 7, or 30. |
{
"type": "object",
"required": [
"q",
"searchLocation"
],
"properties": {
"q": {
"type": "string",
"description": "Product or keyword to search Facebook Marketplace for."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "How many listings to return (1–200). Flat 2 credits when details=false; details=true billed as 2 + 2 per listing."
},
"cursor": {
"type": "string",
"description": "Opaque pagination cursor from a previous nextCursor. A cursor this endpoint did not issue is 400 INVALID_CURSOR."
},
"sortBy": {
"type": "string",
"description": "suggested | distance | creation_time | price_ascend | price_descend."
},
"details": {
"type": "boolean",
"description": "When true, adds description/condition/coordinates/full photo gallery/seller/distanceMiles — billed as 2 + 2 credits per enriched listing (listings the 90s deadline did not reach ship as search cards with truncatedReason=enrich_deadline and are not billed the extra 2). Default false → flat 2 credits; cover photo is still in image."
},
"category": {
"type": "string",
"description": "Top-level category slug, e.g. electronics."
},
"location": {
"type": "string",
"description": "Alias of searchLocation. Prefer searchLocation. Either one is required."
},
"maxPrice": {
"type": "integer",
"minimum": 1,
"description": "Maximum price in local currency units."
},
"minPrice": {
"type": "integer",
"minimum": 1,
"description": "Minimum price in local currency units."
},
"condition": {
"type": "string",
"description": "new, like_new, good, fair (comma-separated ok)."
},
"radiusMiles": {
"type": "integer",
"minimum": 1,
"description": "Radius in miles: 1,2,5,10,20,40,60,80,100,250,500. Does not exclude nationwide shipped inventory."
},
"availability": {
"type": "string",
"description": "available | sold | all."
},
"deliveryMethod": {
"type": "string",
"description": "local_pickup | shipping | all. Shipped listings can appear nationwide outside radiusMiles — use local_pickup for nearby-only; rows expose isLocal / shipsOutsideRadius."
},
"searchLocation": {
"type": "string",
"description": "Search-origin city or place name, e.g. 'Austin, TX'. Required — there is no default city. Echoed on the envelope and inside filters. Not listings[].location. Names that don't resolve to a real place are a definitive 400 UNKNOWN_LOCATION (Facebook would otherwise silently search an unrelated metro) — /v1/facebook/marketplace-location-search finds valid ones."
},
"daysSinceListed": {
"type": "string",
"description": "Facebook calendar-day recency: 1 = since the start of yesterday (not a rolling 24 hours), 7, or 30."
}
},
"additionalProperties": false
}| string |
| YYYY-MM-DD — keep creatives whose shown window overlaps this end. |
| advertiser* | string | Advertiser name, domain (e.g. nike.com), or Google advertiser ID (AR…). Prefer AR… from advertiser-search. |
| start_date | string | YYYY-MM-DD — keep creatives whose shown window overlaps this start. |
{
"type": "object",
"required": [
"advertiser"
],
"properties": {
"sort": {
"type": "string",
"description": "Client-side sort: last_shown (recent activity first) or first_shown. Default is ATC order."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits when results are returned; 0 credits when totalReturned is 0."
},
"topic": {
"type": "string",
"description": "Only \"all\" is supported (commercial ATC). Google publishes spend and impression ranges only for election ads; commercial advertisers omit both. isActive is true when lastShown is within 7 UTC days."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from nextCursor."
},
"region": {
"type": "string",
"description": "Alias for country."
},
"country": {
"type": "string",
"description": "Two-letter ISO country / region code (soft filter). Default US. Alias: region. Non-ISO codes are a definitive 400 INVALID_COUNTRY."
},
"end_date": {
"type": "string",
"description": "YYYY-MM-DD — keep creatives whose shown window overlaps this end."
},
"advertiser": {
"type": "string",
"description": "Advertiser name, domain (e.g. nike.com), or Google advertiser ID (AR…). Prefer AR… from advertiser-search."
},
"start_date": {
"type": "string",
"description": "YYYY-MM-DD — keep creatives whose shown window overlaps this start."
}
},
"additionalProperties": false
}| string |
| Custom range end YYYY-MM-DD (use with startDate). |
| keyword | string | Optional keyword filter on ad creative copy. Whole-word hits are ordered first; already-fetched SERP cards without a literal hit fill behind them up to limit (matchedFrom [] = ranked fill). |
| companyId | string | LinkedIn numeric company id for exact advertiser match. |
| countries | string | Comma-separated ISO country codes (e.g. US,CA,MX). Each code is validated — non-ISO codes are a 400 INVALID_COUNTRY. |
| startDate | string | Custom range start YYYY-MM-DD (use with endDate). |
| paginationToken | string | Alias of cursor. |
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Advertiser / account owner name (min 2 when used). Provide q/company, keyword, or companyId."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). One LinkedIn SERP page is ~25 cards — when limit is higher, further pages are pulled automatically within the request's time budget, so limit=50 fills to 50 when LinkedIn has the ads (hasMore + nextCursor cover the rest). Flat 2 credits per call on the native path; the extended fallback bills ~3.5 credits per returned ad. Response `source` is native or extended so you can see which price applied."
},
"cursor": {
"type": "string",
"description": "Pagination token from paginationToken / nextCursor."
},
"company": {
"type": "string",
"description": "Alias of q — advertiser / account owner name."
},
"country": {
"type": "string",
"description": "Single ISO country code. Default US. Ignored when countries is set. Non-ISO codes are a definitive 400 INVALID_COUNTRY — LinkedIn would otherwise answer an empty result set as if the filter worked."
},
"endDate": {
"type": "string",
"description": "Custom range end YYYY-MM-DD (use with startDate)."
},
"keyword": {
"type": "string",
"description": "Optional keyword filter on ad creative copy. Whole-word hits are ordered first; already-fetched SERP cards without a literal hit fill behind them up to limit (matchedFrom [] = ranked fill)."
},
"companyId": {
"type": "string",
"description": "LinkedIn numeric company id for exact advertiser match."
},
"countries": {
"type": "string",
"description": "Comma-separated ISO country codes (e.g. US,CA,MX). Each code is validated — non-ISO codes are a 400 INVALID_COUNTRY."
},
"startDate": {
"type": "string",
"description": "Custom range start YYYY-MM-DD (use with endDate)."
},
"paginationToken": {
"type": "string",
"description": "Alias of cursor."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"url",
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Keywords or search query (min 2 characters)."
},
"url": {
"type": "string",
"format": "uri",
"description": "Subreddit URL, r/name, or bare name, e.g. r/technology. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble."
},
"sort": {
"type": "string",
"description": "relevance (default) | new | top | hot | comments (alias: comment_count)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 25, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
},
"timeframe": {
"type": "string",
"description": "For sort=top or comments: hour | day | week | month | year | all (default all)."
}
},
"additionalProperties": false
}| Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY (Creative Center used to quietly return an empty leaderboard for them). |
| orderBy | string | Sort: for_you, likes, ctr, impressions, or cost. Default for_you. |
| adFormat | string | Optional format filter: spark or non_spark. Served only by the extended fetcher — while it is disabled, adFormat returns 503 filter_unavailable (retryable false, not billed). Omit adFormat for the native leaderboard. |
| industry | string | Optional industry key or label from Creative Center. |
| objective | string | Optional campaign objective (e.g. Traffic, Conversion, Reach). |
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Optional keyword that ranks the one ~20-row leaderboard page — not a library search. Case-insensitive whole-word hits on title/brandName/industry/objective (hair ≠ wheelchair) come first; the rest of TikTok's keyword-ranked page follows as fill (matchedFrom [] on those ads, rankedFill in the envelope). There is no tags field. advertiser.name is often null in the default US market. Envelope candidatesScanned is the pre-filter pool size. For a known advertiser, use /tiktok/ad-details by ad id."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 20). One Creative Center leaderboard page is ~20 rows; limit only trims that pool — it cannot scan more candidates. Flat 2 credits on the native path; the fallback path ~1 credit per returned ad (min 2)."
},
"match": {
"type": "string",
"description": "Keyword token mode: \"any\" (default, OR) or \"all\" (AND). Zero whole-word hits still return TikTok's keyword-ranked page as matchBasis=ranked (literalMatches=0)."
},
"period": {
"type": "integer",
"minimum": 1,
"description": "Lookback window in days: 7, 30, or 180. Default 30."
},
"country": {
"type": "string",
"description": "Two-letter ISO country code. Default US. Non-ISO codes are a definitive 400 INVALID_COUNTRY (Creative Center used to quietly return an empty leaderboard for them)."
},
"orderBy": {
"type": "string",
"description": "Sort: for_you, likes, ctr, impressions, or cost. Default for_you."
},
"adFormat": {
"type": "string",
"description": "Optional format filter: spark or non_spark. Served only by the extended fetcher — while it is disabled, adFormat returns 503 filter_unavailable (retryable false, not billed). Omit adFormat for the native leaderboard."
},
"industry": {
"type": "string",
"description": "Optional industry key or label from Creative Center."
},
"objective": {
"type": "string",
"description": "Optional campaign objective (e.g. Traffic, Conversion, Reach)."
}
},
"additionalProperties": false
}| string |
| Optional Creative Center industry_id. |
| newOnBoard | boolean | Only hashtags newly on the Top 100. |
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Creative Center page (default 1)."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 100). Flat 2 credits per call."
},
"query": {
"type": "string",
"description": "Optional niche seed for co-occurrence + challenge/detail enrich. Omit, or pass trending, to try the Creative Center chart (10s cap); a miss falls through to related tags for fyp (source=niche_fallback) and opens a chart circuit for that country/period/page/industry. Later calls with the same chart parameters skip the chart (chartStatus=skipped_circuit_open) until the cooldown expires. Any other value skips the chart."
},
"period": {
"type": "integer",
"minimum": 1,
"description": "Lookback days: 7, 30, or 120 (180→120). Default 7."
},
"sortBy": {
"type": "string",
"description": "Chart sort: popular (default)."
},
"country": {
"type": "string",
"description": "Two-letter ISO country for the Creative Center chart. Default US."
},
"industryId": {
"type": "string",
"description": "Optional Creative Center industry_id."
},
"newOnBoard": {
"type": "boolean",
"description": "Only hashtags newly on the Top 100."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Creative Center page (default 1). page>1 triggers chart mode."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"period": {
"type": "integer",
"minimum": 1,
"description": "Lookback days: 7, 30, or 120 (180→120). Triggers chart mode. Every returned publishedAt is inside this window — a For You fallthrough is filtered the same way."
},
"country": {
"type": "string",
"description": "Two-letter ISO country (default US). For You: region-availability hint. Creative Center mode: chart market."
},
"orderBy": {
"type": "string",
"description": "Creative Center sort: hot (views), like, comment, or repost. Unknown values are 400. vv/views/plays are aliases of hot — the response echoes the public name. Setting this (or period / page>1) switches from For You to the popular-videos chart. On a For You fallthrough the same sort is applied locally."
},
"countryCode": {
"type": "string",
"description": "Alias of country. Wins when both are set."
}
},
"additionalProperties": false
}| uploadDate | string | any | today | this_week | this_month | this_year. |
{
"type": "object",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"description": "Search query or keywords (min 2 characters)."
},
"type": {
"type": "string",
"description": "all | videos | shorts | channels | playlists."
},
"cache": {
"type": "boolean",
"description": "Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh."
},
"limit": {
"type": "integer",
"minimum": 1,
"description": "Max items to return (default 20, max 200). Flat 2 credits per call."
},
"cursor": {
"type": "string",
"description": "Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response."
},
"region": {
"type": "string",
"description": "ISO country code for localized results (default US)."
},
"sortBy": {
"type": "string",
"description": "relevance | views (alias: popular→views). date and rating answer 400 SORT_NOT_SUPPORTED: YouTube no longer orders search by upload date (use uploadDate) or by rating. With type=shorts only relevance is supported."
},
"duration": {
"type": "string",
"description": "any | under_4 | 4_20 | over_20. Applies to long-form videos (not Shorts)."
},
"uploadDate": {
"type": "string",
"description": "any | today | this_week | this_month | this_year."
}
},
"additionalProperties": false
}