POST /v1/x/profileX (Twitter) Profile Scraper API
Public X (Twitter) profile: bio, location, verification, follower/following/tweet/like/media/listed counts, avatar and banner.
- Cost
- 1 credit
- Failed requests
- Refunded
- Cache hits
- Free
- Response fields
- 18
- Limits
- Public profiles only
What the X (Twitter) Profile Scraper API does
The X (Twitter) Profile Scraper API returns a public X account as JSON: user ID, username, display name, bio, location, website, creation date, profile and banner images, the legacy and blue verification flags and every public count: followers, following, posts, likes, media and lists. Send a username, an @handle or a profile URL. You do not need a paid X API tier, a developer account or OAuth. The endpoint is a good fit for enriching lead lists, vetting accounts and tracking audience growth of brands and public figures over time. Each lookup costs 1 credit; failed requests are refunded and cached repeats are free.
What you get
Top-level fields of the response. Every field is typed and documented; nullable fields are null when the platform does not show them.
| Field | Type | Description |
|---|---|---|
user_id | string | null | X numeric user ID (rest_id) |
username | string | Screen name (canonical casing) |
full_name | string | Display name |
biography | string | Bio text; empty string if none |
location | string | Profile location; empty string if none |
external_url | string | null | Expanded profile website URL |
is_private | boolean | Tweets are protected |
is_verified | boolean | Legacy verified OR blue-verified |
is_blue_verified | boolean | Has X Premium (blue) checkmark |
follower_count | integer | null | Number of followers |
following_count | integer | null | Number of accounts followed |
tweet_count | integer | null | Total tweets incl. retweets |
like_count | integer | null | Tweets the user has liked |
media_count | integer | null | Number of media posts |
listed_count | integer | null | Number of lists including the user |
created_at | string | null | Join date, X legacy format |
profile_image_url | string | null | Full-size avatar URL |
profile_banner_url | string | null | Profile banner image URL |
Request example
Send the API key as a Bearer token. The body is a small JSON object.
curl -X POST https://api.scrapeeverything.com/v1/x/profile \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username":"tesla"}'| Parameter | Required | Description |
|---|---|---|
username | Yes | X username, @handle or profile URL. |
What it costs
Each successful request costs 1 credit. Your first 100 credits are free. With credit packs, 1,000 requests to this endpoint cost:
Builder pack
$1.56
25,000 credits for $39.00
Growth pack
$1.19
100,000 credits for $119.00
Scale pack
$0.90
500,000 credits for $449.00
See pricing for all packs and rate limits.
Use cases
- Enrich sales leads with their public X bio, website and audience size.
- Track follower growth of competitors, founders or public figures.
- Verify accounts before featuring them or sending outreach.
Limitations: Unofficial API: not affiliated with or endorsed by the platform. Public data only, as a logged-out visitor sees it. Timelines return recent posts only (up to 60); protected accounts and posts X hides from logged-out visitors are missing.
- created_at uses the X date format, for example "Wed Jun 02 20:12:29 +0000 2010".
Questions
Do I need an X developer account?
No. You only need a Scrape Everything API key. The endpoint returns data that is publicly visible on the profile.
What date format does created_at use?
X's own format, for example "Wed Jun 02 20:12:29 +0000 2010". Parse it with your date library.
Does it include the timeline?
No. Use the X posts endpoint for the profile plus its recent posts.
How much does the X (Twitter) Profile Scraper API cost?
1 credit per successful request. Credits are bought in one-time packs and never expire. New accounts get 100 free credits. No payment details needed.
Am I charged for failed requests?
No. If the platform blocks the request, it times out or something fails on our side, the credits are refunded automatically. A definitive answer such as "this account does not exist" is billed because the lookup completed.
Can I re-read a result without paying again?
Yes. Send cache_days (1 to 14) and a repeat request for the same target within that window is served from your cache for free.
More X (Twitter) endpoints
Start with 100 free credits.
Continue with Google, create an API key and send your first request in under a minute.