Better Fetch

Truth Social Scraper

Retrieve public Truth Social profiles, indexed user posts, or one post through public search and Mastodon-compatible status data.

Socialv0.2.0~6 credits/runSource on GitHub

Workspace

Configure

Inputs stay here while results become exportable artifacts.

Start from an example

Retrieve a profile, indexed user posts, or one public post.

Truth Social handle or public profile URL for profile and posts modes.

Optional numeric account id for direct timeline lookup.

Public Truth Social post URL or numeric post id.

Maximum indexed user posts to enrich.

Optional direct timeline cursor when using user_id.

Sign in and run
~6 credits/run10 runs/minute

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.

modepostcountpostsprofilesource_urlnext_max_id

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.

handlestring

Truth Social handle or public profile URL for profile and posts modes.

user_idstring

Optional numeric account id for direct timeline lookup.

post_urlstring

Public Truth Social post URL or numeric post id.

max_resultsintegerdefault: 5

Maximum indexed user posts to enrich.

next_max_idstring

Optional direct timeline cursor when using user_id.

Output

modestringrequired

Resolved operation mode

postobject

One normalized public Truth Social post

post.idstring

Truth Social post id

post.urlstring

Public post URL

post.textstring

Plain-text post body

post.languagestring

Post language code

post.author_idstring

Author account id

post.sensitiveboolean

Whether the post is marked sensitive

post.created_atstring

Post creation timestamp

post.media_urlsstring

Newline-separated public media URLs

post.visibilitystring

Post visibility

post.author_namestring

Author display name

post.media_typesstring

Comma-separated media types

post.content_htmlstring

Original public post HTML

post.author_avatarstring

Author avatar URL

post.reblogs_countinteger

Retruth count

post.replies_countinteger

Reply count

post.author_usernamestring

Author username

post.favourites_countinteger

Like count

countintegerrequired

Number of profiles or posts returned

postsobject[]

Normalized public Truth Social posts

profileobject

Normalized public Truth Social profile

profile.idstring

Truth Social account id

profile.biostring

Plain-text profile bio

profile.botboolean

Whether the account is marked as automated

profile.urlstring

Public profile URL

profile.avatarstring

Public avatar URL

profile.headerstring

Public header image URL

profile.lockedboolean

Whether the account is locked

profile.websitestring

Visible website field

profile.usernamestring

Truth Social username

profile.verifiedboolean

Whether the account is verified

profile.created_atstring

Account creation timestamp

profile.display_namestring

Visible display name

profile.last_status_atstring

Date of most recent visible post

profile.statuses_countinteger

Visible post count

profile.followers_countinteger

Visible follower count

profile.following_countinteger

Visible following count

source_urlstringrequired

Public Truth Social API endpoint fetched

next_max_idstring

Cursor 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

Public-figure monitoring

Inspect public Truth Social posts without maintaining a browser session.

Profile and timeline research

Recover profile metadata and visible posts for prominent public accounts through indexed status URLs.

Post analysis

Turn one public post into clean text, author, engagement, and media fields.

Agent context

Give agents normalized public Truth Social data instead of raw HTML and platform-specific payloads.

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"}'