Skip to main content
POST
Twitter giveaway picker API & random winner draw
Use this Twitter giveaway picker API to select primary and backup winners. Filter replies by reposts, follows, keywords, hashtags, mentions, or language. Add account-age, follower-count, or unique-author rules.
Metered draw execution · source lookup, replies, optional retweeters, and optional follow checks consume credits
Remaining credits cap how many replies and retweeters Xquik can inspect before filters run. totalEntries and validEntries describe that inspected candidate set, not necessarily every reply on the source tweet.

Headers

string
required
Your API key. Session cookie authentication is also supported.
string
required
Must be application/json.

Body

string
required
Full tweet URL to run the draw on. Accepts x.com and twitter.com formats (e.g. https://x.com/user/status/1893456789012345678).
number
Number of winners to draw. Defaults to 1 if omitted.
number
Number of backup winners to draw. Backup winners are selected in case primary winners are disqualified.
boolean
When true, each author can only win once regardless of how many replies they posted.
boolean
When true, only entries from users who retweeted the original tweet are eligible.
string
X username that entrants must follow to be eligible. The @ prefix is stripped if included.
number
Minimum follower count required for eligible entries.
number
Minimum account age in days. Accounts younger than this are excluded.
string
Filter entries by tweet language code (e.g. en, tr, es).
string[]
Array of keywords that must appear in the reply text. Entries missing any keyword are excluded.
string[]
Array of hashtags that must appear in the reply text. Include the # prefix.
string[]
Array of usernames that must be mentioned in the reply text. Include the @ prefix.

Response

201 Created

string
Draw public ID returned by Xquik.
string
X tweet ID extracted from the URL.
number
Candidate entries inspected for this draw after the credit-derived cap. This may be lower than the source tweet’s full reply count.
number
Entries from the inspected candidate set that passed all filters.
array
Selected winners and backup winners. Winner object fields.
number
Winner position (1-indexed).
string
X username of the winner.
string
Tweet ID of the winning reply.
boolean
true if this is a backup winner.

400 Invalid input

Missing or malformed request body. Ensure tweetUrl is a string.

400 Invalid tweet URL

The tweetUrl could not be parsed. Must be a valid x.com or twitter.com status URL.

401 Unauthenticated

Missing or invalid API key / session cookie.

402 Insufficient credits

The available balance cannot cover the minimum draw cost. A later final deduction failure also returns insufficient_credits. No draw result is persisted after that failure. Check your credit balance.

404 Not found

The target tweet does not exist, was deleted, or the ID is invalid.

424 X API dependency failed

Send xquik-api-contract: 2026-04-29 to receive this status for dependency failures that return 502 by default.

429 Rate limited

Too many requests. Wait for the Retry-After header before retrying.

502 X API unavailable

The read service returned an error. Retry after a short delay.
Next steps. Get Draw to retrieve full draw details including tweet metadata, Export Draw to download results as CSV/XLSX/Markdown, or List Draws to see your draw history.