Skip to main content
GET
Twitter giveaway history API & past draw results
List every Twitter giveaway draw owned by the authenticated Xquik account. Review source tweets, draw statuses, entry counts, and completion times. Continue through older results with an opaque cursor. This endpoint returns draw summaries. It does not return winner objects or eligibility rules. Retrieve one draw when winner verification needs those details.
Free. This endpoint does not consume credits.

List past Twitter giveaway draws

Use GET /draws for a Twitter giveaway history page or audit queue. The API orders results by createdAt and draw ID, newest first. Each row identifies its source tweet and inspected candidate counts.

List draw history

Call GET /draws for draw IDs, tweet URLs, statuses, entry counts, and timestamps. Follow nextCursor when hasMore is true.

Review past winners

Call GET /draws/{id} for source tweet metrics and ordered winner rows. Keep primary and backup winners separate.

Export audit records

Call GET /draws/{id}/export for winners or entries. Choose CSV, JSON, Markdown, PDF, text, or XLSX.

Run another draw

Call POST /draws with the source tweet and eligibility rules. Do not reuse an old draw ID for a new selection.
Use list results to find draws. Use detail results to verify winners. Use exports for review, customer support, or campaign archives.

Choose the correct giveaway result

The list route answers which draws exist. It also shows when each draw ran. It cannot answer who won or which reply qualified. Use this handoff for each returned row:

Find past draws

Call GET /draws. Keep id, tweetUrl, status, and createdAt.

Compare entry counts

Read totalEntries and validEntries from each list summary.

Verify winners

Call GET /draws/{id}. Keep position, username, tweet ID, and backup state.

Review the source tweet

Read the tweet ID, text, author, and engagement counts from draw detail.

Download results

Call GET /draws/{id}/export. Select winners or entries and one format.
Do not label validEntries as a winner count. It counts inspected entries that passed the configured filters. Winner rows exist only in the detail response.

Build a Twitter giveaway audit handoff

Store one summary row per draw. Keep the public draw ID as the join key. Store the source tweet URL. Usernames can change.
Fetch detail rows before publishing past giveaway winners. Keep winner position and isBackup. Dashboards and announcements then cannot show a backup winner as a primary winner.

Query parameters

number
Results per page. Default 50, max 100.
string
Cursor for pagination. Pass the nextCursor value from a previous response to fetch the next page. An edited or unknown cursor returns 400.

Headers

string
required
Send your Xquik API key. Generate one from the dashboard.
string
Send Bearer <token> instead of x-api-key when using OAuth 2.1.

Response

200 OK

array
List of draw objects ordered by creation date (newest first). Draw object fields.
string
Draw public ID returned by Xquik.
string
Original tweet URL used for the draw.
string
Draw status (for example completed).
number
Candidate entries inspected for the draw.
number
Entries that passed all filters.
string
ISO 8601 creation timestamp.
string
ISO 8601 timestamp of when Xquik selected winners. Present only for completed draws.
boolean
true if more pages exist beyond this result set.
string
Pagination cursor. Pass it as cursor for the next page.

400 Invalid cursor

The cursor value is not a nextCursor from this route. Send the last nextCursor you received, or omit cursor to start from the first page.

401 Unauthenticated

Missing or invalid API key / session cookie.

429 Rate limited

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

Paginate Twitter giveaway history

Draws use cursor pagination. Pass nextCursor as the next cursor value.
Continue fetching pages until hasMore is false. Cursors are opaque strings. Do not parse or build them. Use this loop to export the complete history:
Node.js
Save the last accepted cursor after you store each batch. Restart from that cursor after a worker failure. Never build a cursor from timestamps or draw IDs.

Handle giveaway history responses

200 Draw page

Read draws and hasMore. Read nextCursor only when another page exists.

400 Invalid cursor

The cursor is not one this route returned. Resend the last nextCursor.

401 Authentication

Authentication failed. Replace the API key or OAuth bearer token first.

429 Rate limit

Too many requests. Honor Retry-After, then resume with the same cursor.
Do not advance the cursor after a failed request. A retry must request the same page. Append results only after the response succeeds.

Twitter giveaway history questions

How do I view past Twitter giveaway draws?

Call GET /draws with your Xquik API key. The newest draw summaries appear first. Follow nextCursor for older results.

Does giveaway history include past winners?

The list response does not include winners. Pass its id to GET /draws/{id} for primary and backup winner rows.

Can I download previous Twitter giveaway winners?

Yes. Fetch the draw ID first. Then export type=winners in CSV, JSON, Markdown, PDF, text, or XLSX.

What do total and valid entries mean?

totalEntries counts inspected candidate entries. validEntries counts entries that passed the draw filters. Neither field reports the winner count.

How do I audit a Twitter giveaway result?

Store the list summary and draw ID. Fetch draw details and keep winner order. Export entries when the review needs every inspected reply.

Does listing giveaway draws consume credits?

No. Listing draw history is free. Running a new draw can consume credits.
Related. Get Draw retrieves one result. Use Create Draw for a new winner selection.