Captapi
REMOTE · API.CAPTAPI.COM · 2 COMPONENTS
Public social media data: profiles, posts, comments, transcripts and ad libraries, 30+ platforms.
Available components
Last scanned (10 minutes ago)
Scores higher than 96% of remote servers
Unreachable for 1 day in a row. Last reached 4 Nov 2026.
Category News and Social
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security11
- TLS not yet verified: we couldn't open a connection to check the certificate. View diagnostics → Unverified
- Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS not yet verified: we couldn't read the response headers to check for it. View diagnostics → Unverified
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability0
- Transport check failed: declared streamable-http, but we couldn't connect to verify it. See how to fix → View diagnostics → Fail
Schema Quality & AI Usability0
- Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Tool Safety0
- Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Capabilities0
- Capabilities not yet verified: we couldn't read the endpoint's capabilities.Unverified
Unverified: 5 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 0
- Endpoint reachability: reachable → unreachable ▼ security
- Stability: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- HSTS header: fail → unverified ▼ security
- Authorization: pass → unverified ▼ security
- TLS certificate: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Capabilities: fail → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- 31 Oct 26 0
- Tool “facebook_ad_library_company_ads” rewrote its description, which is the text the model reads security
- “facebook_ad_library_company_ads” added an optional parameter “start_date” cosmetic
- “facebook_ad_library_company_ads” added an optional parameter “sort_by” cosmetic
- “facebook_ad_library_company_ads” added an optional parameter “end_date” cosmetic
- “rumble_channel_videos” reworded the description of “url” cosmetic
- “facebook_ad_library_search” reworded the description of “end_date” cosmetic
- “facebook_ad_library_search” reworded the description of “start_date” cosmetic
- 29 Oct 26 +13
- Authorization: unverified → pass ▲ security
- First check of Authorization: partial security
- The server rewrote its instructions, which are the text every model session reads security
- 26 Oct 26 0
- Tool “pinterest_search” rewrote its description, which is the text the model reads security
- “pinterest_search” reworded the description of “cursor” cosmetic
- “pinterest_search” reworded the description of “limit” cosmetic
- 25 Oct 26 0
- Tool “threads_post_details” rewrote its description, which is the text the model reads security
- Tool “kick_clip” rewrote its description, which is the text the model reads security
- Tool “threads_profile” rewrote its description, which is the text the model reads security
- “kick_clip” reworded the description of “limit” cosmetic
- “threads_user_posts” reworded the description of “limit” cosmetic
- 23 Oct 26 0
- “facebook_marketplace_search” reworded the description of “cursor” cosmetic
- “google_maps_business_search” reworded the description of “limit” cosmetic
- “facebook_marketplace_search” reworded the description of “details” cosmetic
3 cosmetic changes on this day. Switch on “Show cosmetic changes” to see them.
- 20 Oct 26 0
- Tool “tiktok_channel_posts” rewrote its description, which is the text the model reads security
- Tool “threads_user_posts” rewrote its description, which is the text the model reads security
- Tool “linkedin_ad_library_search_ads” rewrote its description, which is the text the model reads security
- Tool “youtube_comments” rewrote its description, which is the text the model reads security
- Tool “youtube_search” rewrote its description, which is the text the model reads security
- “tiktok_popular_creators” reworded the description of “follower_count” cosmetic
- “tiktok_channel_posts” reworded the description of “limit” cosmetic
- “youtube_search” reworded the description of “sortBy” cosmetic
- “tiktok_search_users” reworded the description of “fallback” cosmetic
- “tiktok_search_by_hashtag” reworded the description of “region” cosmetic
- 19 Oct 26 0
- Tool “linkedin_company” rewrote its description, which is the text the model reads security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://api.captapi.com/mcp
TLS unreached
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of api.captapi.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| captapi.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Inconclusive
We could not reach the endpoint well enough to judge its authorisation posture.
| Result | Inconclusive |
|---|
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://api.captapi.com/mcp | Unreachable | ||
| http (plaintext) | http://api.captapi.com/mcp | HTTPS enforced |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
spotify_artist ~191
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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 | yes | 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 R… |
No output schema declared.
No examples provided.
spotify_podcast ~121
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL. |
No output schema declared.
No examples provided.
spotify_podcast_episodes ~212
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| cursor | string | – | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| limit | integer | – | Max items to return (default 20, max 50). Flat 2 credits per call. |
| raw | boolean | – | Include slimmed per-episode upstream payload as episodes[].raw. Default false. visualIdentity / playedState / podcastV2 are never included. |
| url | string | yes | Spotify show/podcast URL, URI, or ID (e.g. https://open.spotify.com/show/…). Not an artist URL. |
No output schema declared.
No examples provided.
spotify_search ~179
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).
| Name | Type | Req | 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 50). Flat 2 credits per call. |
| q | string | yes | 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. |
No output schema declared.
No examples provided.
spotify_track ~172
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| raw | boolean | – | Include the upstream GraphQL payload as data.raw. Default false — getTrack embeds bulky artist discography. |
| url | string | yes | 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 R… |
No output schema declared.
No examples provided.
threads_post_details ~158
Threads post — engagement (views when exposed), comments[], suggestedPosts[], 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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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, Linke… |
No output schema declared.
No examples provided.
threads_profile ~165
Threads profile — displayName, 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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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 Faceboo… |
No output schema declared.
No examples provided.
threads_search ~192
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).
| Name | Type | Req | 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 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. |
| q | string | yes | Keyword or phrase to search public Threads posts (min 2 characters). |
No output schema declared.
No examples provided.
threads_search_users ~133
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).
| Name | Type | Req | 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 100). Flat 1 credit per call. |
| q | string | yes | Keyword to find Threads users / creators (min 2 characters). |
No output schema declared.
No examples provided.
threads_user_posts ~209
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).
| Name | Type | Req | 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 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 cre… |
| url | string | yes | 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 Pintere… |
No output schema declared.
No examples provided.
tiktok_ad_library_ad_details ~248
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).
| Name | Type | Req | 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 GB. Only EU/EEA + UK + CH are covered by TikTok's library; other codes return 400 UNSUPPORTED_REGION. |
| url | string | yes | 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 outs… |
No output schema declared.
No examples provided.
tiktok_ad_library_search ~302
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).
| Name | Type | Req | 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 (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 UNSUP… |
| 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 re… |
| q | string | yes | Keyword or advertiser to search TikTok Commercial Content Library (min 2 characters). |
No output schema declared.
No examples provided.
tiktok_ad_library_top_ads ~511
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).
| Name | Type | Req | Description |
|---|---|---|---|
| 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 na… |
| 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 Center used to quietly return an empty leaderboard for them). |
| industry | string | – | Optional industry key or label from Creative Center. |
| 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 fallbac… |
| 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). |
| objective | string | – | Optional campaign objective (e.g. Traffic, Conversion, Reach). |
| orderBy | string | – | Sort: for_you, likes, ctr, impressions, or cost. Default for_you. |
| period | integer | – | Lookback window in days: 7, 30, or 180. Default 30. |
| 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… |
No output schema declared.
No examples provided.
tiktok_audience_demographics ~240
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| countriesLimit | integer | – | Max countries in audienceLocations; remainder folds into other{count,percentage}. Omit for the full list (other is omitted when unused). |
| url | string | yes | 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. You… |
| videos | integer | – | How many recent videos to sample comments from: 12 (default, 3 credits), 30 (5 credits), or 60 (8 credits). |
No output schema declared.
No examples provided.
tiktok_channel_details ~269
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).
| Name | Type | Req | 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. |
| cacheMaxAge | string | – | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
| 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 | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_channel_posts ~267
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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 en… |
| 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. |
| url | string | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_comment_replies ~264
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| commentId | string | yes | ID of the parent (top-level) comment to fetch replies for — from the comments endpoint. Legacy alias: comment_id. |
| cursor | string | – | Pagination cursor. Leave empty for the first page; then pass the nextCursor value from the previous response. |
| limit | integer | – | Max items to return (default 50, max 500). Flat 2 credits per call. |
| url | string | yes | 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 cro… |
No output schema declared.
No examples provided.
tiktok_comments ~268
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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. |
| limit | integer | – | Max items to return (default 50, max 500). Flat 2 credits per call. |
| url | string | yes | 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 cro… |
No output schema declared.
No examples provided.
tiktok_live ~191
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_live_info ~170
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_music_posts ~262
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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. |
| 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… |
| url | string | yes | 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, Li… |
No output schema declared.
No examples provided.
tiktok_popular_creators ~257
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).
| Name | Type | Req | 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. |
| cacheMaxAge | string | – | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
| country | string | – | Two-letter ISO country code. Default US. |
| follower_count | string | – | Optional range on the For You ranking: 10k-100k, 100k-1m, 1m-10m, >10m. |
| limit | integer | – | Max items to return (default 20, max 100). Flat 2 credits per call. |
| page | integer | – | Creative Center page (default 1). |
| sort | string | – | follower, engagement, or popularity. Default follower. |
No output schema declared.
No examples provided.
tiktok_popular_hashtags ~324
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).
| Name | Type | Req | 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 for the Creative Center chart. Default US. |
| industryId | string | – | Optional Creative Center industry_id. |
| limit | integer | – | Max items to return (default 20, max 100). Flat 2 credits per call. |
| newOnBoard | boolean | – | Only hashtags newly on the Top 100. |
| page | integer | – | Creative Center page (default 1). |
| period | integer | – | Lookback days: 7, 30, or 120 (180→120). Default 7. |
| 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_fallbac… |
| sortBy | string | – | Chart sort: popular (default). |
No output schema declared.
No examples provided.
tiktok_profile_region ~266
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).
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
| raw | boolean | – | Set true to include TikTok's upstream user/statsV2 blob under raw. Default false — curated fields only. |
| url | string | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_search_by_hashtag ~246
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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. |
| limit | integer | – | Max items to return (default 20, max 100). Billed per result. |
| q | string | yes | 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. |
| region | string | – | Two-letter ISO 3166-1 country code. Default US. Accepted for compatibility; does not filter results by country. |
No output schema declared.
No examples provided.
tiktok_search_suggestions ~207
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).
| Name | Type | Req | 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 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. |
| limit | integer | – | Max items to return (default 20, max 100). Flat 2 credits per call. |
| q | string | yes | Seed keyword to expand into autocomplete suggestions, e.g. skincare. |
No output schema declared.
No examples provided.
tiktok_search_users ~248
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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… |
| 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). |
| limit | integer | – | Max items to return (default 20, max 100). Flat 1 credit per call. |
| q | string | yes | Search query matched against usernames, display names and bios (min 2 characters). |
No output schema declared.
No examples provided.
tiktok_shop_product_details ~248
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).
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
| url | string | yes | 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 pl… |
No output schema declared.
No examples provided.
tiktok_shop_product_reviews ~198
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).
| Name | Type | Req | 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. |
| url | string | yes | 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, Insta… |
No output schema declared.
No examples provided.
tiktok_shop_products ~346
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).
| Name | Type | Req | 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). 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,… |
| 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. |
| url | string | yes | 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… |
No output schema declared.
No examples provided.
tiktok_shop_search ~193
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).
| Name | Type | Req | 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 10, max 10). Flat 2 credits per call. |
| q | string | yes | Product search query (min 2 characters), e.g. phone case. |
| 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… |
No output schema declared.
No examples provided.
tiktok_shop_user_showcase ~159
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).
| Name | Type | Req | 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 | yes | TikTok username, @handle, or profile URL, e.g. jeffreestar or https://www.tiktok.com/@jeffreestar. |
No output schema declared.
No examples provided.
tiktok_song_details ~182
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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, Li… |
No output schema declared.
No examples provided.
tiktok_summarize ~197
Summarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
| url | string | yes | 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 cro… |
No output schema declared.
No examples provided.
tiktok_top_search ~170
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| cursor | integer | – | Pagination cursor. Leave 0 for the first page; then pass nextCursor from the previous response. TikTok may return duplicates across pages. |
| limit | integer | – | Max items to return (default 20, max 200). Flat 2 credits per call. |
| q | string | yes | Search query or keywords (min 2 characters). |
No output schema declared.
No examples provided.
tiktok_transcript ~187
Transcript Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
| url | string | yes | 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 cro… |
No output schema declared.
No examples provided.
tiktok_trending_feed ~323
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).
| Name | Type | Req | 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 (default US). For You: region-availability hint. Creative Center mode: chart market. |
| countryCode | string | – | Alias of country. Wins when both are set. |
| limit | integer | – | Max items to return (default 20, max 200). Flat 2 credits per call. |
| 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) switche… |
| page | integer | – | Creative Center page (default 1). page>1 triggers chart mode. |
| 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. |
No output schema declared.
No examples provided.
tiktok_user_followers ~231
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| cursor | string | – | Pagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response. |
| limit | integer | – | Max items to return (default 50, max 500). Flat 1 credit per call. |
| url | string | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_user_followings ~232
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| cursor | string | – | Pagination cursor (TikTok minCursor). Leave empty for the first page; then pass nextCursor from the previous response. |
| limit | integer | – | Max items to return (default 50, max 500). Flat 1 credit per call. |
| url | string | yes | 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. You… |
No output schema declared.
No examples provided.
tiktok_video_details ~188
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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 cro… |
No output schema declared.
No examples provided.
truth_social_post ~152
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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 Pinte… |
No output schema declared.
No examples provided.
truth_social_profile ~150
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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… |
No output schema declared.
No examples provided.
truth_social_user_posts ~243
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| cursor | string | – | Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response. |
| 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=si… |
| url | string | yes | 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… |
No output schema declared.
No examples provided.
twitch_clip ~215
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).
| Name | Type | Req | 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. |
| cacheMaxAge | string | – | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
| url | string | yes | 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 t… |
No output schema declared.
No examples provided.
twitch_profile ~215
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).
| Name | Type | Req | 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. |
| cacheMaxAge | string | – | Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL. |
| url | string | yes | 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… |
No output schema declared.
No examples provided.
twitch_user_schedule ~183
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).
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
| url | string | yes | 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… |
No output schema declared.
No examples provided.
twitch_user_videos ~304
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| 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). |
| filterBy | string | – | ARCHIVE | HIGHLIGHT | UPLOAD. Omit for all types — there is no default filter (unset filterBy is omitted, not null). |
| 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). |
| sortBy | string | – | TIME (default, newest first) or VIEWS. |
| url | string | yes | 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… |
No output schema declared.
No examples provided.
twitter_community ~162
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).
| Name | Type | Req | Description |
|---|---|---|---|
| cache | boolean | – | Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh. |
| url | string | yes | 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, Insta… |
No output schema declared.
No examples provided.
twitter_community_tweets ~189
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).
| Name | Type | Req | 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 200). Flat 2 credits per call. |
| url | string | yes | 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, Insta… |
No output schema declared.
No examples provided.
twitter_profile ~215
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).
| Name | Type | Req | Description |
|---|---|---|---|
| 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. |
| url | string | yes | 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, Li… |
No output schema declared.
No examples provided.
How do I install the Captapi MCP server?
Captapi is a hosted endpoint at https://api.captapi.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · api.captapi.com
claude mcp add --transport http cdcstream-captapi 'https://api.captapi.com/mcp'
What is the Captapi MCP server?
Captapi is an MCP server listed in the public MCP registry as io.github.CDCStream/captapi. Public social media data: profiles, posts, comments, transcripts and ad libraries, 30+ platforms. This page covers its hosted endpoint (https://api.captapi.com/mcp).
Is the Captapi MCP server safe to use?
Captapi scores 88 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Captapi MCP server expose?
Captapi exposes 178 tools: youtube_transcript, youtube_audio_transcript, youtube_summarize, youtube_video_details, youtube_comments, and 173 more. Their descriptions and schemas cost roughly 37,314 tokens of context every time the server is loaded.
Does the Captapi MCP server require authentication?
Its publisher declares that Captapi requires credentials, so you will need to authorise it in your MCP client. We have not been able to confirm that against the live endpoint.
Is the Captapi MCP server still maintained?
Captapi is still listed in the MCP registry, though our most recent checks did not reach this channel. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.