Extractions
Twitter scraper API & bulk extraction jobs
Start an export job for tweets, followers, following, replies, profiles, timelines, media, communities, or lists with one of 23 tools. 1 credit per result.
- 200
- 202
- 400
- 401
- 402
- 403
- 404
- 409
- 424
- 429
- 502
POST
Twitter scraper API & bulk extraction jobs
1 credit per result extracted · All plans from $0.00012/credit
Query parameters
boolean
Return a cost estimate without creating a job. Defaults to
false.Headers
string
required
Your API key. Session cookie authentication is also supported.
string
required
Must be
application/json.string
Generate one unique value for each job. Reuse it only for an exact retry.
Body
string
required
Extraction tool to run or estimate. See the endpoint’s tool list.
Single targets
string
Tweet ID for a tweet-centered extraction.
string
Username for an account-centered extraction. You may include
@.string
Community ID for a community extraction.
string
List ID for a list extraction.
string
Space ID for
space_explorer.string
Query for
tweet_search_extractor or community_search.Collection targets
string[]
Process 1-10,000 Tweet IDs in one collection job.
string[]
Process 1-100 unique usernames in one job.
tweet_search_extractor collects their posts.string[]
Process 1-100 unique community IDs in one collection job.
string[]
Process 1-100 unique List IDs in one collection job.
string[]
Process 1-100 unique search queries in one collection job.
array
Process up to 10,000 mixed targets with automatic routing.
{ "kind": "...", "value": "..." }.
array
Process up to 100 profile relations in one collection job.
{ "relation": "...", "value": "..." }.
Collection controls
string
Search ranking:
Latest, Top, or Both. Defaults to Latest.integer
Maximum unique results to emit. Defaults to
10,000. Use any positive integer.integer
Maximum results collected for each target. Minimum:
1.integer
Reply pages collected per target. Range:
1-1,000.string
Resume one reply target from this cursor.
boolean
Merge duplicates across targets. Defaults to
true.string
Duplicate handling:
none, first, or merge.boolean
Use
dedupeMode=merge. Defaults to false.boolean
Add matched search terms to collection metadata. Defaults to
false.boolean
Add source target metadata to each result. Defaults to
true.boolean
Add each user’s full profile at
enrichmentData.profile. Applies to
follower_explorer, following_explorer, verified_follower_explorer,
people_search & repost_extractor. Jobs take longer. Defaults to false.Reply collection
string
Strategy:
auto, complete, direct, search, or thread.string
Reply scope:
all, direct, or nested. Defaults to all.integer
Maximum nested reply depth. Minimum:
1.string
Order:
relevance, latest, oldest, or likes.boolean
Exclude replies from the source author. Defaults to
false.boolean
Include the source post. Defaults to
false.boolean
Return only replies with media. Defaults to
false.string | integer
Reply start time as ISO 8601 or Unix seconds.
string | integer
Reply end time as ISO 8601 or Unix seconds.
Tweet result filters
integer
Minimum Tweet view count.
integer
Minimum Tweet bookmark count.
integer
Maximum Tweet like count.
integer
Maximum Tweet repost count.
integer
Maximum Tweet reply count.
integer
Maximum Tweet quote count.
boolean
Return only Blue-verified Tweet authors. Defaults to
false.string
X search no longer supports
cardName, so a search with it finds no Tweets.string
X search no longer supports
source, so a search with it finds no Tweets.string
X search no longer supports
excludeSource, so a search ignores it.string
X search no longer supports
geocode, so a search with it finds no Tweets.string
Return Tweets whose IDs exceed this ID.
string
Return Tweets at or below this ID.
string
Match a place name.
string
X search no longer supports
within, so a search with it finds no Tweets. Use
near alone.string
Match Tweets inside a recent time window.
boolean
Return only native reposts. Defaults to
false.boolean
Enable safe search. Defaults to
false.boolean
X no longer searches
filter:news, so leave this unset.Profile result filters
integer
Minimum profile follower count.
integer
Maximum profile follower count.
integer
Minimum profile following count.
integer
Maximum profile following count.
integer
Minimum profile post count.
integer
Maximum profile post count.
integer
Minimum profile age in days.
string
Match the exact profile verification type.
boolean
Require a profile website. Defaults to
false.boolean
Require a profile location. Defaults to
false.string
Require bio terms separated by commas or lines.
string
Require matching profile location text.
string
Require matching username text.
Tweet search filters
These fields apply totweet_search_extractor.
string
Match an author username without
@.string
Match replies sent to a username.
string
Match Tweets mentioning a username.
string
Match a language code, such as
en.string
Include Tweets on or after
YYYY-MM-DD.string
Include Tweets up to
YYYY-MM-DD, a UTC day, inclusive, so its own Tweets count.string
Media:
images, videos, gifs, media, links, or none.integer
Minimum like count.
integer
Minimum repost count.
integer
Minimum reply count.
integer
Minimum quote count.
boolean
Return only verified authors.
string
Reply mode:
include, exclude, or only.string
Repost mode:
include, exclude, or only.string
Quote mode:
include, exclude, or only.string
Match one exact phrase.
string
Exclude words or quoted phrases.
string
Match any listed word or quoted phrase.
string
Match hashtags separated by spaces, commas, or lines.
string
Match cashtags separated by spaces, commas, or lines.
string
Match a URL substring or domain.
string
Match a conversation ID.
string
Return only replies to this Tweet ID.
string
Return only quotes of this Tweet ID.
string
Return only reposts of this Tweet ID.
string
Search within a List ID.
string
Search within a place ID.
string
Search within a country code.
string
Set a geographic center and radius.
string
Set a geographic bounding box.
string
Append raw advanced search syntax.
Tool types
Choose supported target fields.resultsLimit defaults to 10,000. Send a positive integer to change it.
Tweet target
Use
targetTweetId for tweet-centered jobs:article_extractorextracts article content from a tweet.favoritersextracts visible users who liked a post. Liker identities can be unavailable even when the post reports likes. The job reads through your connected X account. Without one, the job fails witherrorMessageset toerrorXAccountRequired.quote_extractorextracts users who quote-tweeted a tweet.reply_extractorextracts users who replied to a tweet.repost_extractorextracts users who retweeted a tweet.thread_extractorextracts all tweets in a thread.
Username target
Use
targetUsername for account-centered jobs:follower_explorerextracts followers of an account.following_explorerextracts accounts followed by a user.mention_extractorextracts tweets mentioning an account.post_extractorextracts posts from an account.user_likesextracts liked tweets that X makes visible. X shows likes only to their owner. The job reads through your connected X account. Without one, the job fails witherrorMessageset toerrorXAccountRequired.user_mediaextracts media posts from a user.verified_follower_explorerextracts verified followers of an account.
Community target
Use
targetCommunityId for community jobs:community_extractorextracts members of a community.community_moderator_explorerextracts moderators of a community.community_post_extractorextracts posts from a community.community_searchsearches matching posts within that community and also requiressearchQuery.
Search query
Use
searchQuery for keyword jobs:people_searchsearches for users by keyword.tweet_search_extractorsearches and extracts tweets by keyword or hashtag.
List target
Use
targetListId for X List jobs:list_follower_explorerextracts followers of a list.list_member_extractorextracts members of a list.list_post_extractorextracts posts from a list.
Space target
Use
targetSpaceId for Space jobs:space_explorerextracts participants of a Space.
targetSpaceId beside the returned extraction id. Poll
Get Extraction or use
Export Extraction after completion to
read participant user rows.Collect attached media from mixed sources
Usetweet_search_extractor when one job needs several Tweet sources. Set each
source in targets. Use mediaType: "media" to keep rows with attachments.
enrichmentData.tweet.media. Add
outputPreset=flat while retrieving results to return media at row level.
Use user_media with targetUsername for one profile-only job.
Response
202 Accepted
string
Unique extraction job ID (UUID).
number
Milliseconds to wait before polling.
string
Relative URL for status and results.
string
Relative polling URL. It waits 10 seconds and returns 1 compact row.
string
Tool type used for this extraction.
string
Current job status.
Prefer
waitUrl while the job runs. Use statusUrl for immediate checks. New jobs include Location and Retry-After. Terminal replays return pollAfterMs: 0 and omit Retry-After.400 Invalid input
The request body is missing or malformed. Send every required field.400 Invalid tool type
Use one of the 23 tool types.401 Unauthenticated
Missing or invalid API key.402 Insufficient credits
The balance can’t cover the extraction. Errors:no_subscription, subscription_inactive, no_credits or insufficient_credits.
403 Protected account
Post, media & follower tools refuse a protectedtargetUsername. Choose a public account. A multi-target job skips it & ends with partial_failure.
404 Not found
The target tweet or user doesn’t exist, was deleted, or is suspended.409 Idempotency conflict
The key was used for a different request.424 X API dependency failed
Sendxquik-api-contract: 2026-04-29 to get 424 instead of the default 502.
429 Rate limited
WaitRetry-After seconds, then retry.
502 X API unavailable
The read service is unavailable. Retry with exponential backoff.Next steps. Get Extraction to retrieve results with pagination, Export Extraction to download as CSV, XLSX or Markdown, or Estimate Extraction to check costs before running.