Skip to main content
POST
/
x
/
media
/
download
Download media
curl --request POST \
  --url https://api.example.com/x/media/download \
  --header 'Content-Type: <content-type>' \
  --header 'x-api-key: <x-api-key>' \
  --data '
{
  "tweetInput": "<string>",
  "tweetIds": [
    "<string>"
  ]
}
'
1 credit per media item · All plans from $0.00012/credit
curl -X POST https://xquik.com/api/v1/x/media/download \
  -H "x-api-key: xq_YOUR_KEY_HERE" \
  -H "Content-Type: application/json" \
  -d '{
    "tweetInput": "1893456789012345678"
  }' | jq

Headers

x-api-key
string
required
Your API key. Session cookie authentication is also supported.
Content-Type
string
required
Must be application/json.

Body

Provide either tweetInput (single tweet) or tweetIds (bulk). Exactly 1 is required.
tweetInput
string
Tweet URL or numeric tweet ID for a single download. Accepts x.com and twitter.com URL formats. Aliases: tweetId, tweetUrl.
tweetIds
string[]
Array of tweet URLs or IDs for bulk download. Maximum 50 items. Returns a single combined gallery.

Response

tweetId
string
Resolved tweet ID.
Shareable gallery page URL with all downloaded media.
cacheHit
boolean
true if media was served from cache (no usage consumed).
{
  "tweetId": "1893456789012345678",
  "galleryUrl": "https://xquik.com/gallery/abc123",
  "cacheHit": false
}
First download is metered and counts toward your monthly credit allowance. Subsequent requests for the same tweet return cached URLs at no cost (cacheHit: true). All downloads are saved to your gallery at https://xquik.com/gallery.
This endpoint supports dual authentication: API key (x-api-key header) or session cookie from the dashboard.Related: Get Tweet to look up tweet details and metrics, or use the xquik MCP tool for AI agent access.