Truth Social Scraper
Pricing
from $4.99 / 1,000 results
Truth Social Scraper
π° Truth Social Scraper extracts posts, profiles & engagement from Truth Social β including text, timestamps, hashtags, mentions, likes & reposts. π Perfect for social listening, competitor tracking, sentiment & trend analysis. π Fast, reliable data for research & analytics.
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
Scraper Engine
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Truth Social Scraper
Truth Social Scraper is a fast, production-ready Truth Social web scraper that collects public posts into your Apify dataset β streaming full status objects as theyβre fetched for real-time Truth Social data extraction and monitoring. This Truth Social scraping tool solves the hassle of manual copy-paste and unreliable bots by using the same Mastodon-compatible API endpoints that power the platform itself. Built for marketers, developers, data analysts, and researchers, it works as a scalable Truth Social crawler to download Truth Social posts for social listening, competitive analysis, and OSINT workflows at scale.
What data / output can you get?
Each item saved to your dataset is a full Truth Social status object (same shape as the platformβs API). Below are common fields youβll see in the output:
| Data type | Description | Example value |
|---|---|---|
| id | Unique post identifier | "113254987654321098" |
| created_at | ISO timestamp of the post | "2026-04-19T14:22:31.000Z" |
| content | Post body (HTML or plain text when cleanContent is on) | "Great news for our country today!" |
| url | Canonical post URL | "https://truthsocial.com/@exampleuser/posts/113254987654321098" |
| account | Author profile object (as returned by the API) | { "id": "109876543210", "username": "exampleuser", "acct": "exampleuser", "display_name": "Example User" } |
| media_attachments | Array of attached media objects | [ { "id": "99887766", "type": "image", "url": "https://cdn.tru%E2%80%A6/image.jpg" } ] |
| in_reply_to_id | If the post is a reply, the parent status ID | null |
| reblog | Repost/boosted status object (if present) | null |
| quote | Quoted status object (if present) | null |
Notes:
- The actor pushes full JSON status objects. When the cleanContent toggle is enabled, HTML is stripped from content fields (including nested reblog/quote content).
- Results are available in your Apify dataset for download or API access.
Key features
- β‘οΈ Full post objects (API parity) β Saves complete Truth Social status JSON items to your dataset, preserving structure for analytics and replay.
- π― Two modes: timelines & single posts β Set truthSocialUsername for profile timelines or pass fetchSinglePostByIdOrUrl to grab exact posts by ID/URL.
- π Smart filters β Toggle onlyFetchReplies and onlyFetchPostsWithMedia to focus on replies or posts that include images/video.
- π§Ή Clean, readable text β Enable cleanContent to strip HTML to plain text for faster analysis and NLP pipelines.
- π Incremental runs β Use continueFromLastPostId to fetch only new posts since your last run; the actor bookmarks progress in the key-value store under truth_scraper_state.
- π Robust HTTP & proxy handling β Starts direct, escalates to Apify auto-proxy, then residential with retry logic to handle blocks and Cloudflare interstitials.
- π§ͺ Resilient fetching β Uses httpx with Chrome 131 headers and optional curl-cffi/impit-based impersonation to reduce 403s on the Truth Social API endpoints.
- π§° Developer-friendly β A Python-based Truth Social API scraper that streams results as theyβre fetched; ideal for pipelines, Truth Social data export, and automation.
How to use Truth Social Scraper - step by step
- Sign in to Apify and open the Truth Social Scraper actor.
- Choose your targets:
- To scrape a profile timeline, add one or more handles to truthSocialUsername (e.g., realDonaldTrump). β@β is optional.
- To fetch exact posts, use fetchSinglePostByIdOrUrl with full post URLs or numeric IDs.
- Set limits with maxPosts (minimum 5). This caps how many posts to collect from a profileβs feed.
- Refine your stream (optional):
- Toggle continueFromLastPostId to pick up only new posts since your last successful run for that profile.
- Toggle onlyFetchReplies to keep replies only.
- Toggle onlyFetchPostsWithMedia to keep posts that include images/video.
- Enable cleanContent for plain-text content.
- Advanced timeline control (optional): Use startFromPostId (18-digit ID) to load posts older than a specific post (donβt combine with continueFromLastPostId).
- Connection settings (optional): If needed, configure proxyConfiguration with your Apify proxy settings.
- Run the actor. Posts are streamed and saved to your dataset continuously as theyβre fetched.
- Review and download results from the dataset. You can programmatically access them via the Apify API for downstream analysis and reporting.
Pro tip: For monitoring workflows, enable continueFromLastPostId and schedule runs. The actor will only pull posts newer than your last saved ID per username.
Use cases
| Use case name | Description |
|---|---|
| Social listening for brands | Track public posts from key profiles to measure sentiment and messaging shifts over time for marketing insights. |
| Competitor tracking | Monitor competitor accounts to analyze positioning, campaign launches, and engagement patterns. |
| OSINT timelines | Build a Truth Social OSINT tool by collecting public statements from relevant accounts for situational awareness. |
| Research & trend analysis | Aggregate timelines to study topic frequency, mentions, and reposts for academic or media research. |
| Content archiving | Download Truth Social posts from targeted profiles for compliance, newsroom workflows, or historical records. |
| Data pipeline enrichment | Feed structured status objects into analytics stacks for classification, entity extraction, or dashboards. |
| Alerting & monitoring | Run on a schedule with incremental mode to trigger downstream notifications when new posts appear. |
Why choose Truth Social Scraper?
Truth Social Scraper is built for precision, reliability, and automation on the Apify platform.
- β Accurate data model: Saves full status objects exactly as returned by the Truth Social API endpoints.
- βοΈ Flexible modes: Timeline pagination and single-post fetching in one Truth Social data scraper.
- π§Ό Cleaner text-on-demand: Toggle HTML stripping for immediate readability and downstream NLP.
- π Incremental bookmarking: continueFromLastPostId stores per-username checkpoints in truth_scraper_state.
- π‘οΈ Production-grade HTTP: Direct β auto-proxy β residential escalation with cooldowns and retries reduces blocks.
- π Python-native: A developer-friendly Truth Social scraper Python actor thatβs easy to integrate into pipelines.
- π§³ Export-ready: Results stream to your Apify dataset for quick Truth Social data export and analysis.
Unlike brittle browser extensions or unstable scripts, this Truth Social API scraper delivers consistent output and resilient connectivity on a managed platform.
Is it legal / ethical to use Truth Social Scraper?
Yes β when used responsibly. This actor collects only publicly available content. It does not access private profiles or authenticated data.
Guidelines:
- Collect from public posts only.
- Respect applicable laws and platform terms.
- Avoid processing sensitive personal data.
- For edge cases, confirm compliance with your legal team.
Input parameters & output format
Example JSON input
{"truthSocialUsername": ["realDonaldTrump"],"maxPosts": 20,"continueFromLastPostId": true,"onlyFetchReplies": false,"onlyFetchPostsWithMedia": false,"cleanContent": true,"startFromPostId": "123456789012345678","fetchSinglePostByIdOrUrl": ["https://truthsocial.com/@exampleuser/posts/113254987654321098"],"proxyConfiguration": {"useApifyProxy": true}}
Parameter reference
| Field | Type | Description | Default | Required |
|---|---|---|---|---|
| truthSocialUsername | array | Add one or more profile handles (e.g., realDonaldTrump). β@β is optional. | none | No |
| maxPosts | integer | Number of posts to collect from that profileβs feed (min 5; UI description suggests 5β500). | 20 | No |
| continueFromLastPostId | boolean | On: only new posts since your last successful run for this profile. Off: fetch fresh from the top (within your limit). | false | No |
| onlyFetchReplies | boolean | Off: normal posts (replies hidden). On: only reply posts. | false | No |
| onlyFetchPostsWithMedia | boolean | On: keep posts that include images or video. Off: include text-only too. | false | No |
| cleanContent | boolean | On (recommended): plain text content. Off: keep original HTML formatting. | true | No |
| startFromPostId | string | Optional 18-digit post ID β loads posts older than this (donβt combine with continueFromLastPostId). | none | No |
| fetchSinglePostByIdOrUrl | array | Add post IDs or full Truth post links. When set, profile mode is skipped and only these posts are saved. | none | No |
| proxyConfiguration | object | Optional Apify proxy configuration if you use proxy groups on your plan. | none | No |
Example JSON output
Each dataset item is a full Truth Social status object. When cleanContent is enabled, the content field (and nested quote/reblog content) is plain text.
{"id": "113254987654321098","created_at": "2026-04-19T14:22:31.000Z","content": "Big news announced today. Stay tuned!","url": "https://truthsocial.com/@exampleuser/posts/113254987654321098","account": {"id": "109876543210","username": "exampleuser","acct": "exampleuser","display_name": "Example User"},"media_attachments": [{"id": "99887766","type": "image","url": "https://cdn.truthsocial.com/media/preview.jpg"}],"in_reply_to_id": null,"reblog": null,"quote": null}
FAQ
Do I need to log in to use this Truth Social scraping tool?
No. The actor collects public data from Truth Socialβs Mastodon-compatible API endpoints and does not require login or cookies. It saves full status objects directly to your dataset.
Can I download Truth Social posts for specific IDs or URLs?
Yes. Add IDs or full post links to fetchSinglePostByIdOrUrl. When this list has items, profile mode is skipped and only those posts are saved to your dataset.
How does incremental collection work?
Enable continueFromLastPostId to save only new posts since your last successful run. The newest post ID per username is stored in the default key-value store under the key truth_scraper_state.
Can I scrape only replies or only posts with media?
Yes. Use onlyFetchReplies to keep replies only, and onlyFetchPostsWithMedia to keep posts that include images or video. You can combine these with cleanContent for plain-text output.
What does the output look like?
Each dataset item is a full status JSON object from the Truth Social API. Common fields include id, created_at, content, url, account, media_attachments, in_reply_to_id, reblog, and quote.
Is there a Truth Social hashtag scraper mode?
This actor focuses on profile timelines and single-post fetching. It does not include a hashtag search mode.
How does the actor handle rate limits or blocks?
It starts with a direct connection, escalates to Apify auto-proxy, and then to residential proxies with retries and cooldowns. This layered approach helps mitigate 401/403/429 responses and Cloudflare interstitials.
Is this suitable for API pipelines or developer workflows?
Yes. Truth Social Scraper is a Python-based Truth Social API access solution that streams results to your Apify dataset. Access results via the Apify API to integrate with your data pipelines and analytics.
Final thoughts
Truth Social Scraper is built to reliably extract public posts from Truth Social into structured JSON for research, monitoring, and analytics. With timeline and single-post modes, optional plain-text cleaning, incremental bookmarking, and robust proxy escalation, itβs a dependable Truth Social data scraper for marketers, developers, analysts, and researchers. Use it to power Truth Social data export and automated monitoring in your pipelines, and start extracting smarter insights today.