X(Twitter) Reposts Scraper avatar

X(Twitter) Reposts Scraper

Pricing

from $4.99 / 1,000 results

Go to Apify Store
X(Twitter) Reposts Scraper

X(Twitter) Reposts Scraper

See who reposted a given X post—accounts, bios, and follow context in structured rows.

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

PowerAI

PowerAI

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

X Reposts Scraper

List accounts that reposted a specific X post—the same kind of profiles people see in the reposts / reposted-by experience. Each dataset row is one account with nested profile fields, relationship hints, and verification details when returned.

Who it’s for

  • Social & comms teams measuring who amplified a campaign post.
  • Researchers & analysts who need structured exports instead of scrolling the repost list.
  • Moderation workflows that compare reposters against internal rules.

What you can do with it

  • Target one post by its numeric id (from the post URL).
  • Collect many accounts in one run until you reach the limit you set or the list ends.
  • Match every row to that post via requestedTweetId, plus scrapedAt on each row.

How it works (in plain terms)

You enter the post’s numeric id (not the @handle). The tool loads accounts in successive batches until your maximum is reached or there are no more to load—you do not need to manage paging yourself.

Input

FieldRequiredWhat it means
Post ID (tweetId)YesWhich post’s reposts to export.
Maximum results (maxResults)NoUpper limit on how many account rows to collect (default 50).

Output

  • One row per account that reposted the post (until your cap).
  • Identity: __typename (User), internal id, numeric rest_id, profile_image_shape, avatar.image_url when present (profile photo may appear here rather than only under legacy), is_blue_verified, has_graduated_access.
  • Names: core includes name, screen_name, created_at.
  • Permissions: dm_permissions (can_dm) and media_permissions (can_media_tag) when returned.
  • Profile & counts: legacy often includes description (possibly multi-line), entities, default_profile / default_profile_image, followers_count, friends_count, normal_followers_count, favourites_count, listed_count, media_count, statuses_count, pinned_tweet_ids_str, profile_banner_url, possibly_sensitive, want_retweets, withheld_in_countries, notifications, follow_request_sent, has_custom_timelines, is_translator, translator_type, profile_interstitial_type, and similar fields.
  • Relationship to viewer: relationship_perspectives (blocked_by, blocking, followed_by, following, muting), privacy.protected.
  • Other: location, affiliates_highlighted_label (often {}), parody_commentary_fan_label, tipjar_settings (often {}), verification.verified, super_follow_eligible, super_followed_by, super_following.
  • Export metadata: requestedTweetId repeats the post id you entered; scrapedAt is when that row was saved.

Optional fields vary by account. Details may change as X updates its product.

Sample output (one dataset row, from a real run)

{
"__typename": "User",
"affiliates_highlighted_label": {},
"avatar": {
"image_url": "https://pbs.twimg.com/profile_images/2031216467127975936/W6n-UzLk_normal.jpg"
},
"core": {
"created_at": "Fri Nov 21 18:02:58 +0000 2014",
"name": "Lila 🌸",
"screen_name": "LilaGlowUp1"
},
"dm_permissions": {
"can_dm": true
},
"has_graduated_access": true,
"id": "VXNlcjoyODg3MTYxNDg0",
"is_blue_verified": false,
"legacy": {
"default_profile": true,
"default_profile_image": false,
"description": "Business Inquiries (liladostream@gmail.com)\n🎮 Twitch Affiliate | TikTok @LilaGlowUp | YT @LilaGlowUp\n\n💸 Cash App $LilaBrown",
"entities": {
"description": {
"urls": []
}
},
"fast_followers_count": 0,
"favourites_count": 166,
"follow_request_sent": false,
"followers_count": 112,
"friends_count": 148,
"has_custom_timelines": false,
"is_translator": false,
"listed_count": 0,
"media_count": 24,
"normal_followers_count": 112,
"notifications": false,
"pinned_tweet_ids_str": [],
"possibly_sensitive": false,
"profile_banner_url": "https://pbs.twimg.com/profile_banners/2887161484/1771900177",
"profile_interstitial_type": "",
"statuses_count": 3530,
"translator_type": "none",
"want_retweets": false,
"withheld_in_countries": []
},
"location": {
"location": "North America "
},
"media_permissions": {
"can_media_tag": true
},
"parody_commentary_fan_label": "None",
"privacy": {
"protected": false
},
"profile_image_shape": "Circle",
"relationship_perspectives": {
"blocked_by": false,
"blocking": false,
"followed_by": false,
"following": false,
"muting": false
},
"rest_id": "2887161484",
"super_follow_eligible": false,
"super_followed_by": false,
"super_following": false,
"tipjar_settings": {},
"verification": {
"verified": false
},
"requestedTweetId": "1552735248026411010",
"scrapedAt": "2026-03-26T02:15:34.929Z"
}

Good to know

  • Private or deleted posts, or posts with hidden engagement, may return few or no rows.
  • Respect X’s rules and applicable laws when using exported data.