Get tweet with full text, author, metrics and media
Changed onReturns 1 public tweet with author, metrics, and media.
Request
- Base URL: https://xquik.com/api/v1
- URL: https://xquik.com/api/v1/x/tweets/{id}
- Auth: one of:
- API key in header x-api-key
- HTTP bearer
- none
Path parameters
Tweet ID or URL-encoded tweet URL, such as x.com/nasa/status/20. Takes x.com & twitter.com links with or without https://, www., mobile., a query or a fragment, & /i/status or /i/web/status links. Anything else gets 400 invalid_tweet_id.
Query parameters
Fields to keep in each row, comma-separated. Use dots for nested fields, such as author.username. A list keeps the field in each item. Case & underscores do not matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics always stay. An unknown name answers 400 unknown_field with the valid names, before any read. The price stays the same. SDK row types then hold only the named fields. A longer URL fails at the edge before Xquik reads it.
Fields to drop from each row, comma-separated. It takes the same names as fields. With fields, it drops from the kept fields. A longer URL fails at the edge before Xquik reads it.
Response
Tweet with author
Example response
{
"tweet": {
"bookmarkCount": 661,
"id": "2102882545427714266",
"likeCount": 9043,
"quoteCount": 100,
"replyCount": 207,
"retweetCount": 772,
"text": "Welcome to the Artemis Accords, Croatia 🇭🇷\n \nToday, Croatia became the 74th nation that has committed to a peaceful and prosperous exploration of space. https://t.co/Xe1nm2pkSX https://t.co/QQGjcE6KKq",
"viewCount": 1291231,
"conversationId": "2102882545427714266",
"contentDisclosure": {
"aiGenerated": {
"hasAiGeneratedMedia": false
}
},
"displayTextRange": [
0,
176
],
"edit": {
"editableUntilMsecs": "1790204843000",
"editTweetIds": [
"2102882545427714266"
]
},
"entities": {
"hashtags": [],
"urls": [
{
"display_url": "go.nasa.gov/3VcvAQn",
"expanded_url": "https://go.nasa.gov/3VcvAQn",
"indices": [
153,
176
],
"url": "https://t.co/Xe1nm2pkSX"
}
],
"user_mentions": []
},
"isNoteTweet": false,
"isPinned": false,
"isQuoteStatus": false,
"isReply": false,
"isRetweet": false,
"isTranslatable": false,
"lang": "en",
"possiblySensitive": false,
"source": "<a href=\"https://www.sprinklr.com\" rel=\"nofollow\">Sprinklr</a>",
"type": "tweet",
"url": "https://x.com/NASA/status/2102882545427714266",
"viewState": "EnabledWithCount",
"hasCommunityNotes": false,
"media": [
{
"altText": "A graphic showing 74 flags of different countries that have joined the Artemis Accords, now including the Republic of Croatia. Text at the top of the image reads \"Artemis Accords,\" and text at the bottom reads \"United for Peaceful Exploration of Deep Space.\"",
"availabilityStatus": "Available",
"displayUrl": "pic.x.com/QQGjcE6KKq",
"expandedUrl": "https://x.com/NASA/status/2102882545427714266/photo/1",
"faceRects": {
"large": [
{
"h": 72,
"w": 72,
"x": 234,
"y": 658
},
{
"h": 177,
"w": 177,
"x": 207,
"y": 226
}
],
"medium": [
{
"h": 43,
"w": 43,
"x": 140,
"y": 394
},
{
"h": 106,
"w": 106,
"x": 124,
"y": 135
}
],
"orig": [
{
"h": 72,
"w": 72,
"x": 234,
"y": 658
},
{
"h": 177,
"w": 177,
"x": 207,
"y": 226
}
],
"small": [
{
"h": 24,
"w": 24,
"x": 79,
"y": 223
},
{
"h": 60,
"w": 60,
"x": 70,
"y": 76
}
]
},
"focusRects": [
{
"h": 1120,
"w": 2000,
"x": 0,
"y": 0
},
{
"h": 1125,
"w": 1125,
"x": 875,
"y": 0
},
{
"h": 1125,
"w": 987,
"x": 957,
"y": 0
},
{
"h": 1125,
"w": 563,
"x": 1169,
"y": 0
},
{
"h": 1125,
"w": 2000,
"x": 0,
"y": 0
}
],
"height": 1125,
"id": "2102882539895468032",
"indices": [
177,
200
],
"mediaKey": "3_2102882539895468032",
"mediaUrl": "https://pbs.twimg.com/media/HS7wh0rXMAA61bq.jpg",
"sizes": {
"large": {
"h": 1125,
"resize": "fit",
"w": 2000
},
"medium": {
"h": 675,
"resize": "fit",
"w": 1200
},
"small": {
"h": 383,
"resize": "fit",
"w": 680
},
"thumb": {
"h": 150,
"resize": "crop",
"w": 150
}
},
"type": "photo",
"url": "https://t.co/QQGjcE6KKq",
"width": 2000
}
],
"createdAt": "Wed Sep 23 22:07:23 +0000 2026"
},
"author": {
"id": "11348282",
"username": "NASA",
"name": "NASA",
"followers": 92376187,
"accountBasedIn": null,
"following": 115,
"verified": true,
"isBlueVerified": true,
"isVerified": true,
"profilePicture": "https://pbs.twimg.com/profile_images/1321163587679784960/0ZxKlEKB_normal.jpg",
"profilePictureOriginal": "https://pbs.twimg.com/profile_images/1321163587679784960/0ZxKlEKB.jpg",
"coverPicture": "https://pbs.twimg.com/profile_banners/11348282/1788992290",
"profileBannerUrl": "https://pbs.twimg.com/profile_banners/11348282/1788992290",
"description": "Making the seemingly impossible, possible. ✨",
"location": "Pale Blue Dot",
"createdAt": "Wed Dec 19 20:20:32 +0000 2007",
"birthdate": {
"day": 1,
"month": 10,
"year": 1958
},
"statusesCount": 74336,
"mediaCount": 28160,
"protected": false,
"url": "http://www.nasa.gov/",
"contactInfo": {
"links": [
{
"url": "http://www.nasa.gov/",
"network": "website",
"source": "url"
}
]
},
"favouritesCount": 17003,
"possiblySensitive": false,
"verifiedType": "Government",
"profile_bio": {
"description": "Making the seemingly impossible, possible. ✨",
"entities": {
"description": {},
"url": {
"urls": [
{
"display_url": "nasa.gov",
"expanded_url": "http://www.nasa.gov/",
"indices": [
0,
23
],
"url": "https://t.co/9NkQJKAnuU"
}
]
}
}
},
"businessAccountAffiliatesCount": 85,
"creatorSubscriptionsCount": 0,
"hasGraduatedAccess": true,
"hasHiddenSubscriptionsOnProfile": false,
"highlightsInfo": {
"canHighlightTweets": true,
"highlightedTweets": "280"
},
"identityVerification": {
"isIdentityVerified": false,
"verifiedSinceMsec": "1249674830941"
},
"isProfileTranslatable": false,
"parodyCommentaryFanLabel": "None",
"profileDescriptionLanguage": "en",
"profileImageShape": "Square",
"profileSortEnabled": true,
"profileTranslatorType": "regular",
"superFollowEligible": false,
"verificationReason": {
"entities": [
{
"fromIndex": 91,
"toIndex": 101,
"url": "https://help.twitter.com/en/rules-and-policies/profile-labels",
"urlType": "ExternalUrl"
}
],
"text": "This account is verified because it is a government or multilateral organization account. Learn more"
}
}
}Changes
- info
added the optional property
/////////to the response with the status - info
added the optional property
///////////to the response with the status - info
added the optional property
///////////to the response with the status - info
added the optional property
///////////to the response with the status
- info
- warning
added the new
topup_in_progressenum value to the/////response property for the response status - warning
added the new
topup_in_progressenum value to the//////response property for the response status - warning
added the new
topup_in_progressenum value to the/response property for the response status - warning
added the new
topup_in_progressenum value to the/response property for the response status - warning
added the new
topup_in_progressenum value to the/response property for the response status - warning
added the new
topup_in_progressenum value to the/response property for the response status - warning
added the new
topup_in_progressenum value to the/response property for the response status - warning
added the new
topup_in_progressenum value to the/response property for the response status - warning
added the new
topup_in_progressenum value to the//response property for the response status - warning
added the new
topup_in_progressenum value to the//response property for the response status - warning
added the new
topup_in_progressenum value to the//response property for the response status - warning
added the new
topup_in_progressenum value to the//response property for the response status - warning
added the new
topup_in_progressenum value to the//response property for the response status - warning
added the new
topup_in_progressenum value to the//response property for the response status - warning
added the new
topup_in_progressenum value to the//////response property for the response status - warning
added the new
topup_in_progressenum value to the///////response property for the response status
- warning