Truth Social Scraper
Retrieve public Truth Social profiles, indexed user posts, or one post through public search and Mastodon-compatible status data.
Workspace
Configure
Inputs stay here while results become exportable artifacts.
Start from an example
Results
Preview, inspect, copy, or export the complete output.
Your result will become an artifact
Run the tool to inspect structured rows, raw JSON, execution details, and downloadable JSON, CSV, and Markdown files.
Overview
Truth Social Scraper combines Google-indexed public post discovery with the platform's Mastodon-compatible status surface. This supports prominent public profiles and visible timelines even when logged-out account APIs are blocked, while keeping the index-backed coverage limitation explicit.
Last validated: Jul 15, 2026
Input
mode"profile" | "posts" | "post"Retrieve a profile, indexed user posts, or one public post.
handlestringTruth Social handle or public profile URL for profile and posts modes.
user_idstringOptional numeric account id for direct timeline lookup.
post_urlstringPublic Truth Social post URL or numeric post id.
max_resultsintegerdefault: 5Maximum indexed user posts to enrich.
next_max_idstringOptional direct timeline cursor when using user_id.
Output
modestringrequiredResolved operation mode
postobjectOne normalized public Truth Social post
post.idstringTruth Social post id
post.urlstringPublic post URL
post.textstringPlain-text post body
post.languagestringPost language code
post.author_idstringAuthor account id
post.sensitivebooleanWhether the post is marked sensitive
post.created_atstringPost creation timestamp
post.media_urlsstringNewline-separated public media URLs
post.visibilitystringPost visibility
post.author_namestringAuthor display name
post.media_typesstringComma-separated media types
post.content_htmlstringOriginal public post HTML
post.author_avatarstringAuthor avatar URL
post.reblogs_countintegerRetruth count
post.replies_countintegerReply count
post.author_usernamestringAuthor username
post.favourites_countintegerLike count
countintegerrequiredNumber of profiles or posts returned
postsobject[]Normalized public Truth Social posts
profileobjectNormalized public Truth Social profile
profile.idstringTruth Social account id
profile.biostringPlain-text profile bio
profile.botbooleanWhether the account is marked as automated
profile.urlstringPublic profile URL
profile.avatarstringPublic avatar URL
profile.headerstringPublic header image URL
profile.lockedbooleanWhether the account is locked
profile.websitestringVisible website field
profile.usernamestringTruth Social username
profile.verifiedbooleanWhether the account is verified
profile.created_atstringAccount creation timestamp
profile.display_namestringVisible display name
profile.last_status_atstringDate of most recent visible post
profile.statuses_countintegerVisible post count
profile.followers_countintegerVisible follower count
profile.following_countintegerVisible following count
source_urlstringrequiredPublic Truth Social API endpoint fetched
next_max_idstringCursor for the next page of posts
Examples
truth-social-profile
{
"mode": "profile",
"handle": "realDonaldTrump"
}truth-social-posts
{
"mode": "posts",
"handle": "realDonaldTrump",
"max_results": 3
}truth-social-post
{
"mode": "post",
"post_url": "https://truthsocial.com/@realDonaldTrump/114315219437063160"
}Use cases
FAQ
Does this require a Truth Social login?
No. It only reads a public post surface and does not use private cookies or credentials.
Can it fetch profile timelines?
Yes, for accounts with publicly indexed status URLs. Coverage is best-effort because Google does not index every post.
Does it include media and engagement?
Yes. Public post results include reply, retruth, like, and visible media fields when the platform returns them.
Use it anywhere
MCP (Claude, ChatGPT, Codex)
# After connecting https://betterfetch.co/api/mcp, ask your AI to:
1. Call search_tools for "Truth Social Scraper"
2. Call run_tool with:
name: "truth_social_scraper"
input: {"mode":"profile","handle":"realDonaldTrump"}REST
curl -sS -X POST "https://betterfetch.co/api/tools/truth_social_scraper/run" \
-H "Authorization: Bearer bf_your_key_here" \
-H "Content-Type: application/json" \
-d '{"input": {"mode":"profile","handle":"realDonaldTrump"}}'Run locally
git clone https://github.com/better-fetch/tools/tree/main/tools/truth-social-scraper && cd truth-social-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"mode":"profile","handle":"realDonaldTrump"}'