X Twitter Posts Search
Pricing
$19.99/month + usage
X Twitter Posts Search
🔎 X (Twitter) Posts Search finds tweets fast — filter by keywords, hashtags, handles, lang, date, geo & engagement. 📊 Export results for social listening, brand monitoring & competitor insights. ⚡ Real-time, accurate, API-ready for marketers, PR & research.
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
ScraperX
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
X Twitter Posts Search
X Twitter Posts Search is an Apify actor that collects public posts from X (Twitter) via profile timelines, keywords, and hashtags — fast, accurate, and at scale. It eliminates manual copy/paste by turning posts into clean, structured JSON ready for analysis, helping marketers, developers, data analysts, and researchers run advanced searches, monitor topics, and extract insights. With flexible targeting (profiles or queries), Top/Latest search modes, and optional time-window filtering, it powers real-time social listening, brand monitoring, and data pipelines.
What data / output can you get?
Below are the structured fields saved to your Apify dataset for each post.
| Data type | Description | Example value |
|---|---|---|
| id | Unique post ID | "1988877569597260072" |
| url | Canonical post URL | "https://x.com/SpaceX/status/1988877569597260072" |
| user_posted | Author handle (screen_name) | "SpaceX" |
| name | Author display name | "SpaceX" |
| description | Full post text | "Starship completed its fourth flight test today..." |
| date_posted | ISO UTC timestamp | "2026-04-02T07:52:18.000Z" |
| likes | Like count | 1245 |
| replies | Reply count | 98 |
| reposts | Repost (retweet) count | 320 |
| quotes | Quote count | 17 |
| views | View count (impressions) | 1399060 |
| bookmarks | Bookmark count | 210 |
| is_verified | Blue check verification flag | true |
| followers | Author’s follower count | 29900450 |
| following | Author’s following count | 120 |
| posts_count | Author’s total posts | 58500 |
| profile_image_link | Author’s avatar URL | "https://pbs.twimg.com/profile_images/.../normal.jpg" |
| biography | Author bio | "Making life multiplanetary" |
| hashtags | Extracted hashtags | ["Starship", "FlightTest"] |
| tagged_users | Mentioned users | ["elonmusk"] |
| photos | First photo URL (if any) | "https://pbs.twimg.com/media/XYZ.jpg" |
| videos | mp4 variants (highest bitrate first) | ["https://video.twimg.com/.../1080p.mp4"] |
| quoted_post | Quoted post metadata object | {"post_id": "123", ...} |
| external_url | Author profile external URL (if any) | "https://www.spacex.com" |
| input | Source context (url or searchQuery) | {"searchQuery": "starship latest"} |
Notes:
- quoted_post includes the following keys when available: data_posted, description, post_id, profile_id, profile_name, url, videos.
- Export your dataset in CSV, JSON, or Excel from Apify — perfect for dashboards, BI, and ETL.
Key features
-
🔧 Robust session bootstrapping
Automatically captures a guest bearer token and current GraphQL operation IDs in a headless browser to stay resilient as X updates its endpoints. -
🔎 Flexible targeting (profiles or queries)
Paste profile URLs, @handles, single-word usernames, or multi-word queries. Use the “search:” prefix for explicit live search with operators (e.g., “search: python from:NASA”). -
🧭 Top vs. Latest modes
Switch searchType to “top” (popular/relevant) or “latest” (newest first). On profile timelines, this mainly affects the saved sort order. -
⏱ Time-window filtering (Latest mode)
Combine searchType=latest + timeWindow to keep only posts from the last N days (UTC) for real-time monitoring. -
🧹 Clean, de-duplicated results
Extracts first-class timeline tweet nodes and avoids counting quoted/embedded posts twice, yielding analytics-ready data. -
📈 Scalable pagination with limits
Cursor-based pagination honors maxTweets per input (1–1000) so you collect exactly what you need. -
🌐 Proxy-aware with smart fallback
Start with your proxyConfiguration; on network errors the actor can escalate to Apify datacenter and then RESIDENTIAL proxies for tougher blocks. -
🧰 Developer-friendly JSON
Consistent fields for engagement, media, author metadata, and context (input url/searchQuery) — ideal for pipelines and automation.
How to use X Twitter Posts Search - step by step
-
Sign in to Apify
Create or log in to your Apify account to run the actor and access results in the run’s dataset. -
Open “X Twitter Posts Search”
Click Try for free and start a new run. -
Add targets in startUrls
- One per line/string: profile URL (“https://x.com/username”), “@user”, “username”, or a multi-word query like “climate change”.
- Use “search: …” for explicit search (e.g., “search: python from:NASA”).
- Note: Single tweet URLs (/status/…) are not supported and will be skipped.
-
Choose Search mode
Set searchType to “top” or “latest”. On profile runs, this mainly affects sort order of saved posts. -
(Optional) Limit by time window
With searchType=latest, set timeWindow to keep only posts from the last N days (UTC). -
Set maxTweets per target
Control per-target collection (1–1000) to match your workload. -
Configure proxy (recommended for X)
Use proxyConfiguration to enable Apify Proxy. Residential IPs work best if X blocks datacenter IPs. -
Run the actor
The actor bootstraps a browser session, discovers live GraphQL endpoints, and collects posts for each input. -
Download results
Open the run’s dataset to browse, preview, and export as JSON, CSV, or Excel.
Pro tip: Combine “search: …” with operators and searchType=latest + timeWindow to build near real-time monitoring pipelines.
Use cases
| Use case name | Description |
|---|---|
| Social monitoring & alerts | Track keywords and hashtags to capture timely conversations and brand mentions for reporting and alerts. |
| Influencer & competitor tracking | Collect posts from specific profiles to benchmark engagement and content strategy. |
| News & trend intelligence | Switch to Latest with a timeWindow to surface breaking posts for crisis comms and rapid insights. |
| Campaign analysis | Export structured metrics (likes, replies, reposts, quotes, views) for post-campaign performance reviews. |
| Academic & market research | Build reproducible datasets with author metadata, hashtags, mentions, and media references. |
| Data engineering pipelines | Feed clean JSON records (with input context) into ETL, enrichment, and dashboards. |
Why choose X Twitter Posts Search?
Built for precision, resilience, and scale — without brittle scraping hacks.
- 🎯 Accurate & structured output: Captures timeline tweets only and avoids duplicates from quoted/embedded content.
- ⚙️ Resilient to platform changes: Discovers live GraphQL operation IDs each run to reduce endpoint breakage.
- 🌐 Proxy-smart reliability: Can escalate from your config to Apify datacenter and RESIDENTIAL proxies on network errors.
- 🔎 Flexible targeting: Profiles or free-form queries with “search:” prefix for advanced searches.
- ⏱ Freshness control: Latest + timeWindow keeps datasets focused on the last N days.
- 🧩 Developer-ready: Consistent JSON with engagement, media, author metadata, and source context for automation.
- 💼 Production-ready: Scales with cursor pagination and respects maxTweets per input to control workload.
In short: a robust X posts search scraper vs. fragile extensions or unstable scripts.
Is it legal / ethical to use X Twitter Posts Search?
Yes — when done responsibly. This actor collects publicly available posts from X (Twitter) without login. You are responsible for ensuring your use complies with X’s terms and applicable regulations.
Guidelines:
- Only collect publicly available data.
- Respect platform terms and acceptable use.
- Avoid scraping private content or bypassing protections.
- Consult your legal team for edge cases and local regulations.
Input parameters & output format
Example JSON input
{"startUrls": ["https://x.com/wikipedia","@NASA","elonmusk","climate change","search: python from:NASA"],"searchType": "latest","timeWindow": 3,"maxTweets": 25,"proxyConfiguration": {"useApifyProxy": false}}
Parameters
-
startUrls (array, required)
Description: Add one row per target. Works with profile URLs, @handles, single-word usernames, multi-word keywords, or “search:” queries. Skips single-tweet links (/status/…).
Default: none -
searchType (string enum: top | latest, required)
Description: Top → popular/relevant ordering; Latest → newest first (best with Time window). On profile runs, mainly changes sort order of saved posts.
Default: "top" -
timeWindow (integer, optional)
Description: Only keep posts newer than this many days (UTC). Requires searchType=latest. Applies to keyword search and profile timelines. Leave empty to collect up to Max posts.
Default: none (minimum 1) -
maxTweets (integer, optional)
Description: Max posts to collect per URL, user, or keyword (1–1000). Higher values increase run time and API load.
Default: 10 -
proxyConfiguration (object, optional)
Description: Off = direct connection (X may block datacenter IPs). On = Apify Proxy (choose groups in the proxy UI). The actor can escalate to other Apify proxy tiers on network errors. For stubborn blocks, try RESIDENTIAL.
Default: {"useApifyProxy": false}
Example JSON output
[{"biography": "Exploring the universe and sharing the adventure.","bookmarks": 42,"date_posted": "2026-04-02T12:34:56.000Z","description": "New images from the Hubble are in! #space #Hubble","external_url": "https://www.nasa.gov","followers": 10000000,"following": 200,"hashtags": ["space", "Hubble"],"id": "1988877569597260072","input": { "searchQuery": "space images latest" },"is_verified": true,"likes": 1234,"name": "NASA","photos": "https://pbs.twimg.com/media/ABC123.jpg","posts_count": 123456,"profile_image_link": "https://pbs.twimg.com/profile_images/xyz/normal.jpg","quoted_post": {"data_posted": null,"description": null,"post_id": null,"profile_id": null,"profile_name": null,"url": null,"videos": null},"quotes": 12,"replies": 85,"reposts": 210,"tagged_users": ["HubbleTelescope"],"url": "https://x.com/NASA/status/1988877569597260072","user_posted": "NASA","videos": ["https://video.twimg.com/amplify_video/12345/vid/1080p.mp4","https://video.twimg.com/amplify_video/12345/vid/720p.mp4"],"views": 1399060}]
Notes:
- input echoes the source context per item — either {"url": "..."} for profile timeline capture or {"searchQuery": "..."} for search results.
- photos is the first photo URL when present; videos lists mp4 variants ordered by bitrate.
- quoted_post fields may be null when no quoted content exists. external_url may be null when the author profile has no external link.
FAQ
Does this support single tweet URLs?
No. Single tweet/status links (/status/…) are not supported. Provide a profile, username/@handle, or a keyword/“search:” query instead.
How do I switch between Top and Latest results?
Set the searchType input to "top" for popular/relevant ordering or "latest" for the newest posts first. On profile timelines, this mainly affects the saved sort order.
Can I limit results to recent posts only?
Yes. Use searchType="latest" together with timeWindow to keep only posts from the last N days (UTC). This applies to both keyword searches and profile timelines.
How many posts can I collect per input?
Use maxTweets to cap results per target. It supports 1–1000 posts per input, subject to availability.
Do I need a proxy to run this?
It can run without a proxy, but X may block datacenter IPs. Use proxyConfiguration to enable Apify Proxy. On network errors, the actor can escalate to Apify datacenter and then RESIDENTIAL proxies. Residential is recommended for stubborn blocks.
Can I search X posts from a specific user?
Yes. Provide a profile URL, @handle, or single-word username in startUrls to fetch that account’s timeline posts.
Can I use search operators or search hashtags?
Yes. Add multi-word queries or use the “search:” prefix (e.g., “search: python from:NASA”) to run a live search, including X search operators.
What formats can I export to?
Results are saved to your Apify dataset, which you can export as JSON, CSV, or Excel, or access programmatically via the Apify API.
Closing CTA / Final thoughts
X Twitter Posts Search turns public X posts into structured, reliable data for monitoring, analytics, and research. With flexible targeting (profiles or queries), Top/Latest modes, optional time-window filtering, proxy-smart reliability, and a clean JSON schema, it’s ideal for marketers, analysts, developers, and researchers. Run it on Apify, export from the dataset, or integrate via API into your pipelines — start extracting smarter, faster insights from X today.
What are other Twitter scraping tools?
If you want to scrape specific Twitter data, you can use any of the dedicated scrapers below for faster and more targeted results.