Quote tweets
Tweets that quote a tweet.
/tweet/{tweetId}/quotesParameters
tweetIdpath · string · requiredNumeric tweet ID (digits only, up to 30), the number at the end of the tweet URL.
countquery · integer · optional · default 20Number of tweets to ask X for. Sent to X as is; X treats it as a hint and decides how many it returns (follower and following pages often hold 50 to 70 users for count=20). A value that is not a number falls back to 20.
cursorquery · string · optionalBottom cursor from the previous page. Leave it out for the first page. See Pagination.
rankingModequery · string · optionalRecency returns the newest quotes first (Latest tab). Anything else uses the Top tab.
Paginated: pass the bottom cursor of one page as cursor to get the next. Each page is one billed call. See Pagination.
Example request
curl 'https://api.twittrapi.com/tweet/20/quotes' \
--header 'X-API-KEY: YOUR_API_KEY'from twittrapi import TwittrAPI
client = TwittrAPI(api_key="YOUR_API_KEY")
data = client.tweets.quotes("20")import { TwittrAPI } from "twittrapi";
const client = new TwittrAPI({ apiKey: process.env.TWITTRAPI_API_KEY });
const data = await client.tweets.quotes({ tweetId: "20" });curl 'https://twitter-aio.p.rapidapi.com/tweet/20/quotes' \
--header 'x-rapidapi-key: YOUR_RAPIDAPI_KEY' \
--header 'x-rapidapi-host: twitter-aio.p.rapidapi.com'Base URL https://api.twittrapi.com, key in the X-API-KEY header. Python and Node.js use the official SDKs.
Response
Raw JSON of X's SearchTimeline for quoted_tweet_id:<tweetId>. Unlike /search, it is not wrapped in {category, entries}.
Simple format (?format=simple or X-Response-Format: simple): Collection of Tweet objects: {data: [Tweet], nextCursor, previousCursor, hasNextPage}. Each item quotes the tweet (quoted). Schema.
{
"data": {
"search_by_raw_query": {
"search_timeline": {
"timeline": {
"instructions": [
{
"entries": [
{
"content": {
"__typename": "TimelineTimelineItem",
"clientEventInfo": {
"component": "result",
"details": {
"timelinesDetails": {
"controllerData": "DAACDAAFDAABDAABDAABCgABAAAAAAACAAAKAARrZsZzAPh0SQAADAACCgABAAAAAAAAAAAKAAJqHGK7stjygwoABQaJTTBeTByxCAAGAAAAAAoAB0ufWcraxGPPCgAIAAABoSd0DOQAAAAAAA=="
}
},
"element": "tweet"
},
"entryType": "TimelineTimelineItem",
"feedbackInfo": {
"feedbackKeys": [
"1060665035"
]
},
"itemContent": {
"__typename": "TimelineTweet",
"itemType": "TimelineTweet",
"tweetDisplayType": "Tweet",
"tweet_results": {
"result": {
"__typename": "Tweet",
"cashtag_attachments": [],
"core": {
"user_results": {
"result": {
"__typename": "User",
"action_counts": {
"favorites_count": 26263
},
"affiliates_highlighted_label": {},
"avatar": {
"image_url": "https://pbs.twimg.com/profile_images/1000000000000000000/example_normal.jpg"
},
"banner": {
"image_url": "https://pbs.twimg.com/profile_banners/1000000000000000000/1700000000"
},
"core": {
"created_at": "Wed Feb 06 11:52:24 +0000 2013",
"name": "Example User 1",
"screen_name": "example_user_1"
},
"dm_permissions": {
"can_dm": true
},
"follow_request_sent": false,
"has_graduated_access": true,
"id": "VXNlcjoxMDAwMDAwMDAwMDAwMDAwMDAx",
"is_blue_verified": true,
"location": {
"location": "Example"
},
"media_permissions": {
"can_media_tag": true
},
"notifications_settings": {
"notifications_enabled": false
},
"parody_commentary_fan_label": "None",
"pinned_items": {},
"possibly_sensitive": false,
"privacy": {
"protected": false
},
"professional": {
"category": [],
"professional_type": "Creator",
"rest_id": "1530175951224594432"
},
"profile_bio": {
"description": "Example",
"entities": {
"description": {},
"url": {
"urls": [
{
"display_url": "example.com",
"expanded_url": "https://example.com",
"indices": [
0,
23
],
"url": "https://t.co/example"
}
]
}
}
},
"profile_image_shape": "Circle",
"profile_metadata": {
"profile_interstitial_type": ""
},
"profile_translation": {
"translator_type": "none"
},
"relationship_counts": {
"followers": 16404,
"following": 1172
},
"relationship_perspectives": {
"blocked_by": false,
"blocking": false,
"followed_by": false,
"following": false,
"live_following": false,
"muting": false
},
"rest_id": "1000000000000000001",
"super_follow_eligible": true,
"super_followed_by": false,
"super_following": false,
"tweet_counts": {
"media_tweets": 2185,
"tweets": 24710
},
"verification": {
"verified": false
},
"website": {
"url": "https://t.co/example"
}
}
}
},
"edit_control": {
"edit_tweet_ids": [
"2000000000000000001"
],
"editable_until_msecs": "1770472555000",
"edits_remaining": "5",
"is_edit_eligible": true
},
"grok_analysis_button": true,
"grok_annotations": {
"is_image_editable_by_grok": false
},
"grok_translated_post_with_availability": {
"is_available": false
},
"is_translatable": false,
"legacy": {
"bookmark_count": 3,
"bookmarked": false,
"conversation_id_str": "2000000000000000001",
"created_at": "Sat Feb 07 12:55:55 +0000 2026",
"display_text_range": [
0,
58
],
"entities": {},
"favorite_count": 13,
"favorited": false,
"full_text": "Example text.",
"id_str": "2000000000000000001",
"is_quote_status": true,
"lang": "en",
"quote_count": 0,
"quoted_status_id_str": "2019881223666233717",
"quoted_status_permalink": {
"display": "x.com/XDevelopers/st…",
"expanded": "https://example.com",
"url": "https://t.co/example"
},
"reply_count": 4,
"retweet_count": 0,
"retweeted": false,
"user_id_str": "1000000000000000001"
},
"quoted_status_result": {
"result": {
"__typename": "Tweet",
"card": {
"legacy": {
"binding_values": [
{
"key": "photo_image_full_size_large",
"value": {
"image_value": {
"height": 419,
"url": "https://pbs.twimg.com/card_img/2107952823128182784/RyT0hE6P?format=jpg&name=800x419",
"width": 800
},
"type": "IMAGE"
}
},
{
"key": "thumbnail_image",
"value": {
"image_value": {
"height": 150,
"url": "https://pbs.twimg.com/card_img/2107952823128182784/RyT0hE6P?format=jpg&name=280x150",
"width": 218
},
"type": "IMAGE"
}
},
{
"key": "description",
"value": {
"string_value": "Use the X API with an all-new Developer Console and consumption-based billing. No fixed monthly costs, no monthly caps.",
"type": "STRING"
}
}
],
"card_platform": {
"platform": {
"audience": {
"name": "production"
},
"device": {
"name": "Swift",
"version": "12"
}
}
},
"name": "summary_large_image",
"url": "https://t.co/FS66GuIYJD",
"user_refs_results": []
},
"rest_id": "https://t.co/FS66GuIYJD"
},
"core": {
"user_results": {
"result": {
"__typename": "User",
"action_counts": {
"favorites_count": 2758
},
"affiliates_highlighted_label": {
"label": {
"badge": {
"url": "https://pbs.twimg.com/profile_images/1955359038532653056/OSHY3ewP_bigger.jpg"
},
"description": "X",
"url": {
"url": "https://twitter.com/X",
"urlType": "DeepLink"
},
"userLabelDisplayType": "Badge",
"userLabelType": "BusinessLabel"
}
},
"avatar": {
"image_url": "https://pbs.twimg.com/profile_images/1683501992314798080/xl1POYLw_normal.jpg"
},
"banner": {
"image_url": "https://pbs.twimg.com/profile_banners/2244994945/1690213128"
},
"core": {
"created_at": "Sat Dec 14 04:35:55 +0000 2013",
"name": "Developers",
"screen_name": "XDevelopers"
},
"dm_permissions": {
"can_dm": true
},
"follow_request_sent": false,
"has_graduated_access": true,
"id": "VXNlcjoyMjQ0OTk0OTQ1",
"is_blue_verified": true,
"location": {
"location": "127.0.0.1"
},
"media_permissions": {
"can_media_tag": true
},
"notifications_settings": {
"notifications_enabled": false
},
"parody_commentary_fan_label": "None",
"pinned_items": {
"tweet_ids_str": [
"2019881223666233717"
]
},
"possibly_sensitive": false,
"privacy": {
"protected": false
},
"professional": {
"category": [
{
"icon_name": "IconBriefcaseStroke",
"id": 1009,
"name": "Community"
}
],
"professional_type": "Business",
"rest_id": "1516891231749517312"
},
"profile_bio": {
"description": "The voice of the X Dev team and your official source for updates, news, and events, related to the X API.",
"entities": {
"description": {},
"url": {
"urls": [
{
"display_url": "docs.x.com",
"expanded_url": "https://docs.x.com/",
"indices": [
0,
23
],
"url": "https://t.co/NIwHVIVyrN"
}
]
}
}
},
"profile_description_language": "en",
"profile_image_shape": "Square",
"profile_metadata": {
"profile_interstitial_type": ""
},
"profile_translation": {
"translator_type": "regular"
},
"relationship_counts": {
"followers": 698074,
"following": 770
},
"relationship_perspectives": {
"blocked_by": false,
"blocking": false,
"followed_by": false,
"following": false,
"live_following": false,
"muting": false
},
"rest_id": "2244994945",
"super_follow_eligible": false,
"super_followed_by": false,
"super_following": false,
"tweet_counts": {
"media_tweets": 832,
"tweets": 4376
},
"verification": {
"verified": false,
"verified_type": "Business"
},
"website": {
"url": "https://t.co/NIwHVIVyrN"
}
}
}
},
"edit_control": {
"edit_tweet_ids": [
"2019881223666233717"
],
"editable_until_msecs": "1770415785000",
"edits_remaining": "5",
"is_edit_eligible": false
},
"grok_analysis_button": true,
"grok_translated_post_with_availability": {
"is_available": false
},
"is_translatable": false,
"legacy": {
"bookmark_count": 2803,
"bookmarked": false,
"conversation_id_str": "2019881223666233717",
"created_at": "Fri Feb 06 21:09:45 +0000 2026",
"display_text_range": [
0,
261
],
"entities": {
"urls": [
{
"display_url": "developer.x.com",
"expanded_url": "http://developer.x.com",
"indices": [
238,
261
],
"url": "https://t.co/FS66GuIYJD"
}
]
},
"favorite_count": 5599,
"favorited": false,
"full_text": "Officially launching X API Pay-Per-Use\n\nThe core of X developers are indie builders, early stage products, startups, and hobbyists\n\nIt’s time to open up our X API ecosystem and instill a new wave of next generation X apps\n\nWe’re so back. https://t.co/FS66GuIYJD",
"id_str": "2019881223666233717",
"is_quote_status": false,
"lang": "en",
"possibly_sensitive": false,{
"data": [
{
"id": "2000000000000000001",
"url": "https://x.com/example_user_1/status/2000000000000000001",
"text": "Example text.",
"createdAt": "2026-02-07T12:55:55Z",
"lang": "en",
"author": {
"id": "1000000000000000001",
"username": "example_user_1",
"name": "Example User 1",
"description": "Example",
"location": "Example",
"url": "https://example.com",
"createdAt": "2013-02-06T11:52:24Z",
"avatarUrl": "https://pbs.twimg.com/profile_images/1000000000000000000/example.jpg",
"bannerUrl": "https://pbs.twimg.com/profile_banners/1000000000000000000/1700000000",
"verified": true,
"verifiedType": null,
"protected": false,
"counts": {
"followers": 16404,
"following": 1172,
"tweets": 24710,
"likes": 26263,
"media": 2185,
"listed": 0
},
"pinnedTweetIds": [],
"isAutomated": false
},
"counts": {
"likes": 13,
"retweets": 0,
"replies": 4,
"quotes": 0,
"bookmarks": 3,
"views": 3160
},
"media": [],
"urls": [],
"hashtags": [],
"mentions": [],
"replyTo": null,
"quoted": {
"id": "2019881223666233717",
"url": "https://x.com/XDevelopers/status/2019881223666233717",
"text": "Officially launching X API Pay-Per-Use\n\nThe core of X developers are indie builders, early stage products, startups, and hobbyists\n\nIt’s time to open up our X API ecosystem and instill a new wave of next generation X apps\n\nWe’re so back. http://developer.x.com",
"createdAt": "2026-02-06T21:09:45Z",
"lang": "en",
"author": {
"id": "2244994945",
"username": "XDevelopers",
"name": "Developers",
"description": "The voice of the X Dev team and your official source for updates, news, and events, related to the X API.",
"location": "127.0.0.1",
"url": "https://docs.x.com/",
"createdAt": "2013-12-14T04:35:55Z",
"avatarUrl": "https://pbs.twimg.com/profile_images/1683501992314798080/xl1POYLw.jpg",
"bannerUrl": "https://pbs.twimg.com/profile_banners/2244994945/1690213128",
"verified": true,
"verifiedType": "Business",
"protected": false,
"counts": {
"followers": 698074,
"following": 770,
"tweets": 4376,
"likes": 2758,
"media": 832,
"listed": 0
},
"pinnedTweetIds": [
"2019881223666233717"
],
"isAutomated": false
},
"counts": {
"likes": 5599,
"retweets": 896,
"replies": 791,
"quotes": 596,
"bookmarks": 2803,
"views": 2552260
},
"media": [],
"urls": [
"http://developer.x.com"
],
"hashtags": [],
"mentions": [],
"replyTo": null,
"quoted": null,
"retweetOf": null,
"conversationId": "2019881223666233717",
"isPinned": false,
"source": null,
"article": null
},
"retweetOf": null,
"conversationId": "2000000000000000001",
"isPinned": false,
"source": null,
"article": null
}
],
"nextCursor": "DAACCgACHUS5wrfAJxAKAAMdRLnCt7_Y8AgABAAAAAILAAUAAADwRW1QQzZ3QUFBZlEvZ0dKTjB2R3AvQUFBQUJRY0NVbExSaHVCWXh3SUpyT3JsMUJqSEFndytqSFhrZFljQ0JGSzBkcHhGQndJRnNQbTF4RWNIQWhKRDNKYWNjRWNDR3ZaaXB2QkNSd0lnTVMzR3VIMkhBaSt2UEJiY0lzZFJEVVh2RnV3a3h3STU5UlpWb0NxSEF1QWZ5dlhVVHNjQ0x6eFBwcHhJQndKT01Ncm04RW5IQWlFcHRLV3NBWWNDTGNJZlphQm9Sd0laYU1nR25CakhBaTAyOC9XTVZrY0NJeUlBdGVoTUJ3SXUwMmJtbkRlCAAGAAAAAAgABwAAAAAMAAgKAAEcCBFK0dpxFAAAAA",
"previousCursor": "DAACCgACHUS5wrfAJxAKAAMdRLnCt7_Y8AgABAAAAAELAAUAAADwRW1QQzZ3QUFBZlEvZ0dKTjB2R3AvQUFBQUJRY0NVbExSaHVCWXh3SUpyT3JsMUJqSEFndytqSFhrZFljQ0JGSzBkcHhGQndJRnNQbTF4RWNIQWhKRDNKYWNjRWNDR3ZaaXB2QkNSd0lnTVMzR3VIMkhBaSt2UEJiY0lzZFJEVVh2RnV3a3h3STU5UlpWb0NxSEF1QWZ5dlhVVHNjQ0x6eFBwcHhJQndKT01Ncm04RW5IQWlFcHRLV3NBWWNDTGNJZlphQm9Sd0laYU1nR25CakhBaTAyOC9XTVZrY0NJeUlBdGVoTUJ3SXUwMmJtbkRlCAAGAAAAAAgABwAAAAAMAAgKAAEcCBFK0dpxFAAAAA",
"hasNextPage": true
}In the raw format, field names and nesting come from X and can change without notice. See Response format; the simple format keeps a fixed schema.
Errors
- 422tweetId is not numeric.
Errors every endpoint can return (401, 402, 403, 404, 408, 409, 429, 5xx), and which of them are charged, are on the Errors page. Calls that fail with 400, 408, 409 or a 5xx error are refunded.