scraping-twitter-profile-tweets
Extracts tweets, reply threads, and engagement metrics from a specific Twitter/X profile using apidojo's Twitter Profile Scraper on Apify. Triggers when the user asks to: get all t…
API Dojo
@apidojo-io
Install
$ openclaw skills install @apidojo-io/scraping-twitter-profile-tweetsScraping Twitter Profile Tweets
Raw data collection. No assumed use case — returns the full dataset for downstream analysis.
Inputs
| Parameter | Type | Required | Default | Notes |
|---|---|---|---|---|
startUrls | array | Optional | [] | Twitter profile URLs (x.com or twitter.com formats) |
twitterHandles | array | Optional | [] | Twitter usernames (without @) |
start | string | Optional | — | Tweets after this date (YYYY-MM-DD or YYYY-MM-DD_HH:MM:SS_UTC) |
end | string | Optional | — | Tweets before this date (YYYY-MM-DD or YYYY-MM-DD_HH:MM:SS_UTC) |
includeNativeRetweets | boolean | Optional | false | Include native retweets in results |
onlyImages | boolean | Optional | false | Only tweets containing images |
getReplies | boolean | Optional | false | Include tweet replies |
minReplyCount | number | Optional | — | Minimum reply count threshold |
getAboutData | boolean | Optional | false | Fetch full profile about data |
maxItems | number | Optional | Unlimited | Maximum tweets to return |
customMapFunction | string | Optional | — | JavaScript function to transform each output object |
How to Run
Using run_actor.js (recommended)
# Quick answer (table)
node scripts/run_actor.js --actor "apidojo~twitter-profile-scraper" --input '{"twitterHandles": ["elonmusk"], "maxItems": 100}'
# Save as CSV
node scripts/run_actor.js --actor "apidojo~twitter-profile-scraper" --input '{"twitterHandles": ["elonmusk"], "maxItems": 100}' --output results.csv --format csv
# Save as JSON
node scripts/run_actor.js --actor "apidojo~twitter-profile-scraper" --input '{"twitterHandles": ["elonmusk"], "maxItems": 100}' --output results.json --format json
REST API fallback
curl -X POST "https://api.apify.com/v2/acts/apidojo~twitter-profile-scraper/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"twitterHandles": ["elonmusk"], "maxItems": 100}'
If Apify MCP is available:
Use the Apify MCP call_actor tool with actor apidojo~twitter-profile-scraper and the input above.
Output Fields
| Field | Type | Description |
|---|---|---|
type | string | Always tweet |
id | string | Tweet ID |
url | string | Tweet URL (x.com) |
twitterUrl | string | Tweet URL (twitter.com) |
text | string | Tweet text content |
retweetCount | number | Retweet count |
replyCount | number | Reply count |
likeCount | number | Like count |
quoteCount | number | Quote tweet count |
bookmarkCount | number | Bookmark count |
createdAt | string | Creation timestamp |
lang | string | Detected language |
isReply | boolean | Whether this is a reply |
isRetweet | boolean | Whether this is a retweet |
isQuote | boolean | Whether this is a quote tweet |
source | string | Twitter client used |
author.userName | string | Author @username |
author.name | string | Author display name |
author.isVerified | boolean | Legacy verification |
author.isBlueVerified | boolean | Twitter Blue verification |
author.profilePicture | string | Author profile picture URL |
author.followers | number | Author follower count |
Edge Cases
- Private account: Returns 0 tweets. Tell user the account is private.
- Account suspended: Returns error. Handle may be banned.
- Very active account: Use maxItems to cap and control cost ($0.0004 per extra tweet).
- Date range: Minimum 50 results needed for the query to run. If few tweets in range, widen date range.
- Retweets in results: Actor returns all public tweets including retweets.
Top skills in this category
Skill Vetter
@spclaudehomeSecurity-first skill vetting for AI agents. Use before installing any skill from ClawdHub, GitHub, or other sources. Checks for red flags, permission scope, and suspicious patterns.
API Gateway
@byungkyuCall third-party APIs through the Maton gateway, which injects the credential for an app the user has already connected. Use this skill when the user names a connected app and a concrete action in it - read a mailbox, query a CRM, file an issue, update a spreadsheet, run a query through a connected
Openclaw Command Center
@jontsaiMission control dashboard for OpenClaw - real-time session monitoring, LLM usage tracking, cost intelligence, and system vitals. View all your AI agents in o...
Prompt Guard
@seojoonkim650+ pattern AI agent security defense covering prompt injection, supply chain injection, memory poisoning, action gate bypass, unicode steganography, cascad...
Skill Vetter - Pre-Install Security Review
@donovanpankratz-delSecurity vetting protocol before installing any AI agent skill. Red flag detection for credential theft, obfuscated code, exfiltration. Risk classification L...