X Twitter Posts Search avatar

X Twitter Posts Search

Pricing

$19.99/month + usage

Go to Apify Store
X Twitter Posts Search

X Twitter Posts Search

🔎 X (Twitter) Posts Search finds and filters posts by keywords, hashtags, users, language, date & engagement. ⚡ Fast, precise results for social listening, brand monitoring, trend tracking & competitor analysis. 📊 Export-ready data for marketing & PR teams.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapAPI

ScrapAPI

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

4 days ago

Last modified

Share

X Twitter Posts Search is an Apify actor that finds and filters public X (Twitter) posts from profiles or live search queries — by keywords, hashtags, users, language hints inside your query, date window, and engagement ordering. It solves the pain of manual social listening and brand monitoring by automating discovery across timelines and search results with export‑ready data. Built for marketers, developers, data analysts, and researchers, it supports X advanced search patterns, lets you search tweets by keyword, and even search X posts by date using a time window — enabling large‑scale trend tracking and competitor analysis.

What data / output can you get?

Below are the exact fields this actor saves to the Apify dataset. Values include post content, engagement metrics, author metadata, media, and contextual quote details you can use to search tweets by hashtag, search tweets by exact phrase, or filter tweets by engagement in reporting.

Data fieldDescriptionExample value
idPost ID (rest_id)"1765432109876543210"
urlCanonical post URL"https://x.com/example/status/1765432109876543210"
user_postedUsername (handle)"example"
nameDisplay name"Example User"
descriptionFull post text"Breaking news about climate change…"
date_postedUTC timestamp (ISO)"2026-04-02T15:21:00.000Z"
likesFavorite count128
repliesReply count42
repostsRetweet/repost count19
quotesQuote count3
viewsView count (as reported by X)152340
bookmarksBookmark count11
is_verifiedBlue check verification flagtrue
followersAuthor followers25430
followingAuthor following612
posts_countAuthor total posts18345
profile_image_linkAvatar URL"https://pbs.twimg.com/profile_images/..."
biographyAuthor bio text"Open-source, space, and science."
hashtagsExtracted hashtags["ClimateAction", "Research"]
tagged_usersMentioned users["nasa", "who"]
photosFirst photo URL (if present)"https://pbs.twimg.com/media/....jpg"
videosMP4 variants (highest bitrate first)["https://video.twimg.com/.../1080p.mp4", ".../720p.mp4"]
quoted_postQuoted post metadata object{"data_posted":"2026-04-01T11:00:00.000Z", ...}
external_urlAuthor’s profile URL field (if any)"https://example.com"
inputSource context for the row{"searchQuery":"climate change from:nasa"}

Notes:

  • The actor produces one row per post from either a user timeline or SearchTimeline results. Quoted posts are summarized inside quoted_post to avoid duplicate rows.
  • Results are ready for export from the Apify dataset in your preferred formats (e.g., JSON, CSV, Excel).

Key features

  • 🔎 Live search and profile timelines Use multi‑word queries or the search: prefix to run a live X advanced search, or pass a profile URL/@handle/username to fetch timeline posts. You can search tweets by keyword, search tweets by hashtag, and search tweets from a specific user in one workflow.

  • ⏱️ Date window with “Latest” Combine Search mode = Latest with a Time window (days) to search tweets within a date range. The actor keeps only posts newer than N days across search and profile timelines.

  • 🧭 “Top” vs “Latest” ordering Choose Search mode: Top (popular/relevant) or Latest (newest first). The actor also sorts saved results to prioritize fresh content or high‑engagement posts — ideal when you need to filter tweets by engagement for analytics.

  • 🧰 Robust session bootstrap Automatically launches a browser to capture a guest bearer token and current GraphQL operation IDs (SearchTimeline, UserTweets). This keeps the extractor resilient to X’s internal updates and works without you providing credentials — effectively search tweets without logging in.

  • 🔁 Pagination and de‑duplication Follows GraphQL cursors and extracts tweet nodes from timeline instructions, avoiding duplicates and preventing quoted/embedded tweets from inflating counts.

  • 🌐 Proxy escalation (recommended for X) Starts with your configured proxy (or none), then escalates on network errors to Apify datacenter and residential proxy tiers for better success rates on stubborn blocks.

  • 📦 Export‑ready 23‑field records Clean, consistent schema with post text, engagement metrics, author stats, media, hashtags, mentions, and quoted_post context — ready for dashboards and BI tools.

How to use X Twitter Posts Search - step by step

  1. Sign in to Apify Create or log into your Apify account to run the actor.

  2. Add targets to startUrls Enter one target per line. Works with:

  • Profile URL: https://x.com/username
  • @handle or username
  • Multi‑word query: climate change
  • Explicit search prefix: search: python from:NASA
  1. Choose Search mode Set searchType to top or latest. Top surfaces popular/relevant posts; Latest is best for news and time‑sensitive monitoring.

  2. Set a time window (optional) To search X posts by date, set searchType to latest and enter timeWindow with the number of days (UTC). The actor will keep only posts newer than this window.

  3. Control volume Use maxTweets to limit how many posts to save per target (1–1000).

  4. Configure proxy (recommended) Under proxyConfiguration, enable Apify Proxy if you see blocks or empty responses. Residential proxy works best for X.

  5. Run the actor Start the run. The actor bootstraps a guest session in a headless browser, discovers GraphQL endpoints, fetches posts, paginates, and pushes results to the dataset.

  6. Review and export results Open the dataset to browse your posts as a table, then download in the formats you need for analysis or automation.

Pro tip:

  • Use search: with advanced query syntax (e.g., search: "exact phrase" from:account) to search tweets by exact phrase or search tweets containing links using operators in your query string.
  • For “trend tracking now,” pick Latest + a short timeWindow to focus on the last N days.

Use cases

Use caseDescription
Social listening & brand monitoringTrack mentions, hashtags, and replies to your brand; prioritize high‑engagement “Top” results for reporting.
Trend tracking & news monitoringMonitor breaking topics using Latest + timeWindow to find old tweets on X within a recent window or catch emerging stories fast.
Competitor analysisObserve competitor posting cadence, topics, and engagement to inform content strategy.
Campaign analysisAggregate posts by hashtag/keywords to measure reach, engagement, and audience response.
Research & journalismCollect verifiable public posts and quoted context for stories and studies with export‑ready fields.
API/data pipeline ingestionFeed structured post records into analytics pipelines, dashboards, or ML preprocessing.
Crisis & incident responseSearch tweets by keyword and hashtag to quickly surface relevant updates at scale.

This actor is purpose‑built for precision, resilience, and export‑ready social data at scale.

  • 🎯 Accurate extraction via timeline instructions and deep parsing safeguards against duplicates and noise.
  • ⚡ Scales across many inputs with per‑target limits and cursor‑based pagination.
  • 🛡️ Proxy escalation flow improves reliability when X tightens access from certain IPs.
  • 🧠 Automatic guest session + GraphQL discovery keeps the scraper aligned with site updates.
  • 🔌 Developer‑friendly outputs you can consume via Apify datasets and API for automation.
  • 💰 Efficient data collection without manual work or brittle browser extensions.

In short, it’s a production‑ready X advanced search and timeline scraper that outperforms ad‑hoc scripts and unstable tools.

Yes — when done responsibly. This actor collects publicly available posts from X. It does not access private profiles or require user credentials; it bootstraps a guest session in a headless browser and reads public timelines/search results.

Guidelines for compliant use:

  • Only process publicly available content and respect platform policies.
  • Avoid scraping private data or attempting to bypass protections.
  • Ensure your usage complies with applicable regulations (e.g., GDPR/CCPA) and your organization’s legal guidance.
  • Use proxies responsibly to avoid abusive request patterns.

Users are responsible for verifying compliance for their specific use case.

Input parameters & output format

Example input

{
"startUrls": [
"https://x.com/elonmusk",
"@NASA",
"climate change",
"search: python from:NASA"
],
"searchType": "latest",
"timeWindow": 7,
"maxTweets": 50,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Parameters

  • startUrls (array, required) Description: Add one row per target. Works: https://x.com/username · @user · username · climate change · search: python from:NASA. Skipped: links to a single tweet (…/status/123…). Multi‑word = search. One word / profile URL = that account’s posts. Default: none

  • maxTweets (integer) Description: Cap how many posts to collect per URL, user, or keyword (1–1000). Higher = longer run & more API load. Default: 10 Min/Max: 1–1000

  • timeWindow (integer) Description: Keep posts newer than this many days (UTC). Requires Search type → Latest + a number here. Applies to keyword search and profile timelines. Leave empty if you want all posts up to Max posts. Default: none Min: 1

  • searchType (string, required) Description: Top → popular/relevant ordering (good for broad topics). Latest → newest first (best for news + Time window). On profile runs this mainly changes sort order of saved posts. Enum: top, latest Default: "top"

  • proxyConfiguration (object) Description: Off = direct connection (fast, but X may block datacenter IPs). On = Apify Proxy — pick groups in the proxy UI. The actor can escalate to other Apify proxy tiers if a request throws (network errors). Empty API responses still need a better IP or retry. For stubborn blocks, try RESIDENTIAL. Default: none (prefill uses useApifyProxy: false)

Example output

[
{
"biography": "Exploring space and science.",
"bookmarks": 7,
"date_posted": "2026-04-02T15:21:00.000Z",
"description": "New imagery from today’s pass over the crater rim.",
"external_url": "https://example.org",
"followers": 25430,
"following": 612,
"hashtags": ["Space", "Imaging"],
"id": "1765432109876543210",
"input": { "searchQuery": "climate change from:nasa" },
"is_verified": true,
"likes": 128,
"name": "Example User",
"photos": "https://pbs.twimg.com/media/ABC123.jpg",
"posts_count": 18345,
"profile_image_link": "https://pbs.twimg.com/profile_images/XYZ_normal.jpg",
"quoted_post": {
"data_posted": "2026-04-01T11:00:00.000Z",
"description": "Earlier measurements look promising.",
"post_id": "1765000000000000000",
"profile_id": "1234567890",
"profile_name": "Quoted Account",
"url": null,
"videos": null
},
"quotes": 3,
"replies": 42,
"reposts": 19,
"tagged_users": ["esa", "jaxa_en"],
"url": "https://x.com/example/status/1765432109876543210",
"user_posted": "example",
"videos": [
"https://video.twimg.com/amplify_video/abc/1080p.mp4",
"https://video.twimg.com/amplify_video/abc/720p.mp4"
],
"views": 152340
}
]

Notes:

FAQ

How do I search tweets by keyword or exact phrase?

Use a multi‑word query directly in startUrls or prefix with search:. For an exact phrase, wrap it in quotes inside your query string. The actor sends your raw query to X’s SearchTimeline.

Can I search tweets from a specific user?

Yes. Add a profile URL (https://x.com/username), @handle, or the plain username to fetch that account’s timeline. You can also pass a user‑scoped search query (e.g., search: python from:NASA).

How do I search X posts by date or within a range?

Set searchType to latest and timeWindow to the number of days (UTC). The actor keeps only posts newer than this window on both search and profile timelines.

Can I use Twitter advanced search filters or operators?

Yes. The actor accepts your raw search string via startUrls, including search: queries. You can include operators in that string; the actor forwards it to SearchTimeline.

Does it work without logging in?

Yes. The actor boots a headless browser to capture a guest session (bearer + cookies) automatically. You don’t provide credentials.

Can I filter tweets by minimum likes?

There’s no dedicated “min likes” parameter. However, Search mode = Top prioritizes popular posts and the actor sorts by likes for that mode. You can also post‑filter by likes after export.

How many posts can I collect per target?

Control volume with maxTweets (1–1000). The actor paginates until it reaches your limit, the end of the timeline, or your timeWindow constraints.

What if X blocks my IP or results look empty?

Enable proxyConfiguration. The actor can escalate from your configured proxy to Apify datacenter and then to residential proxies on network errors to improve success rates.

Closing CTA / Final thoughts

X Twitter Posts Search is built to reliably extract structured X post data at scale from timelines and live search queries. With guest session bootstrap, proxy escalation, date‑window filtering, and a consistent 23‑field schema, it’s ideal for marketers, researchers, analysts, and developers. Use the Apify dataset to automate pipelines, run scheduled monitoring, and integrate with your analytics stack. Ready to start extracting smarter social insights — from advanced keyword queries to time‑bounded monitoring — with clean, export‑ready data.

Need a custom build? Email dev.scraperengine@gmail.com.