X / Twitter
Posts / User Posts
Paginated timeline of an account's posts including text, entities (hashtags, mentions, links), attached media, reply/repost/like/bookmark counts, view counts and timestamps. Use it for brand monitoring, newsjacking alerts and engagement benchmarking.
What you get
Each call returns up to 20 tweets, plus a cursor for the next 20.
Endpoint
GET /v1/x/posts-user-posts
Price
$4.50
per 1,000 calls · $0.0045 per call
Cost per call
3 credits
Failed calls never charged
Parameters
The X / Twitter handle, URL or identifier to resolve.
Maximum records to return, capped at this service's page size (see Limits below). Omit it to receive the whole page. It shapes the response, not the price — a call costs the same either way.
Pagination cursor returned by a previous response.
Bypass cached data and force a live fetch for this one call. Use it for daily monitoring or any figure you are tracking over time. Accepts `true`, `1`, `false` or `0`; anything else returns 400 `invalid_fresh`. Defaults to false and costs exactly the same as a cached call.
One of: true, 1, false, 0
Example request
Live call. Successful calls are charged; failed and empty results are not.
curl "https://fastfetchz.com/v1/x/posts-user-posts?target=nasa" \
-H "X-API-Key: $FASTFETCHZ_KEY"Example response
{
"success": true,
"service": {
"platform": "X / Twitter",
"name": "Posts / User Posts",
"slug": "posts-user-posts"
},
"credits_charged": 3,
"credits_remaining": 97,
"latency_ms": 214,
"data": {
"items": [
{
"type": "tweet",
"id": "2097393144144769473",
"url": "https://x.com/NASA/status/2097393144144769473",
"twitterUrl": "https://twitter.com/NASA/status/2097393144144769473",
"text": "RT @NASAMoonBase: No aim too high. No journey too far. No terrain too challenging. \n\nWe’re going back to the Moon. This time, to stay. http…",
"source": "Twitter for iPhone",
"retweetCount": 188,
"replyCount": 47,
"likeCount": 1096,
"quoteCount": 18,
"viewCount": 91966,
"createdAt": "Tue Sep 08 18:34:27 +0000 2026",
"lang": "en",
"bookmarkCount": 77,
"isReply": false,
"inReplyToId": null,
"conversationId": "2097393144144769473",
"displayTextRange": [
0,
140
],
"inReplyToUserId": null,
"inReplyToUsername": null,
"author": {
"type": "user",
"userName": "NASA",
"url": "https://x.com/NASA",
"twitterUrl": "https://twitter.com/NASA",
"id": "11348282",
"name": "NASA",
"isVerified": false,
"isBlueVerified": true,
"verifiedType": "Government",
"profilePicture": "https://pbs.twimg.com/profile_images/1321163587679784960/0ZxKlEKB_normal.jpg",
"coverPicture": "https://pbs.twimg.com/profile_banners/11348282/1775567134",
"description": "",
"location": "Pale Blue Dot",
"followers": 92386707,
"following": 117,
"status": "",
"canDm": false,
"canMediaTag": true,
"createdAt": "Wed Dec 19 20:20:32 +0000 2007",
"entities": {
"description": {
"urls": []
},
"url": {}
},
"fastFollowersCount": 0,
"favouritesCount": 16985,
"hasCustomTimelines": true,
"isTranslator": true,
"mediaCount": 28138,
"statusesCount": 74279,
"withheldInCountries": [],
"affiliatesHighlightedLabel": {},
"possiblySensitive": false,
"pinnedTweetIds": [],
"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/9NkQJKAVks"
}
]
}
}
},
"isAutomated": false,
"automatedBy": null
},
"extendedEntities": {},
"card": null,
"place": {},
"entities": {
"user_mentions": [
{
"id_str": "2031457713868386305",
"indices": [
3,
16
],
"name": "NASA Moon Base",
"screen_name": "NASAMoonBase"
}
]
},
"quoted_tweet": null,
"retweeted_tweet": {
"type": "tweet",
"id": "2097391642286096476",
"url": "https://x.com/NASAMoonBase/status/2097391642286096476",
"twitterUrl": "https://twitter.com/NASAMoonBase/status/2097391642286096476",
"text": "No aim too high. No journey too far. No terrain too challenging. \n\nWe’re going back to the Moon. This time, to stay. https://t.co/9KvAp1aISd",
"source": "Twitter for iPhone",
"retweetCount": 188,
"replyCount": 47,
"likeCount": 1096,
"quoteCount": 18,
"viewCount": 91966,
"createdAt": "Tue Sep 08 18:28:29 +0000 2026",
"lang": "en",
"bookmarkCount": 77,
"isReply": false,
"inReplyToId": null,
"conversationId": "2097391642286096476",
"displayTextRange": [
0,
116
],
"inReplyToUserId": null,
"inReplyToUsername": null,
"author": {
"type": "user",
"userName": "NASAMoonBase",
"url": "https://x.com/NASAMoonBase",
"twitterUrl": "https://twitter.com/NASAMoonBase",
"id": "2031457713868386305",
"name": "NASA Moon Base",
"isVerified": false,
"isBlueVerified": true,
"verifiedType": "Government",
"profilePicture": "https://pbs.twimg.com/profile_images/2090513058099494912/dBwj4x3V_normal.jpg",
"coverPicture": "https://pbs.twimg.com/profile_banners/2031457713868386305/1774364640",
"description": "",
"location": "Lunar South Pole",
"followers": 73753,
"following": 43,
"status": "",
"canDm": false,
"canMediaTag": true,
"createdAt": "Tue Mar 10 19:52:18 +0000 2026",
"entities": {
"description": {
"urls": []
},
"url": {}
},
"fastFollowersCount": 0,
"favouritesCount": 792,
"hasCustomTimelines": true,
"isTranslator": false,
"mediaCount": 24,
"statusesCount": 177,
"withheldInCountries": [],
"affiliatesHighlightedLabel": {
"label": {
"badge": {
"url": "https://pbs.twimg.com/profile_images/1321163587679784960/0ZxKlEKB_bigger.jpg"
},
"description": "NASA",
"url": {
"url": "https://twitter.com/NASA",
"url_type": "DeepLink"
},
"user_label_display_type": "Badge",
"user_label_type": "BusinessLabel"
}
},
"possiblySensitive": false,
"pinnedTweetIds": [
"2097391642286096476"
],
"profile_bio": {
"description": "Building humanity's first outpost on the Moon. \nFor science. For discovery. For what comes next.",
"entities": {
"description": {},
"url": {
"urls": [
{
"display_url": "nasa.gov/moonbase",
"expanded_url": "http://www.nasa.gov/moonbase",
"indices": [
0,
23
],
"url": "https://t.co/e3whur7ONv"
}
]
}
}
},
"isAutomated": false,
"automatedBy": null
},
"extendedEntities": {
"media": [
{
"additional_media_info": {
"monetizable": false
},
"display_url": "pic.x.com/9KvAp1aISd",
"expanded_url": "https://x.com/NASAMoonBase/status/2097391642286096476/video/1",
"ext_master_playlist_only": [],
"ext_media_availability": {
"status": "Available"
},
"ext_playlists": [],
"id_str": "2097391565207433216",
"indices": [
117,
140
],
"media_key": "13_2097391565207433216",
"media_results": {
"id": "QXBpTWVkaWFSZXN1bHRzOgwABAoAAR0bboQfFvAAAAA=",
"result": {
"__typename": "ApiMedia",
"id": "QXBpTWVkaWE6DAAECgABHRtuhB8W8AAAAA==",
"media_key": "13_2097391565207433216"
}
},
"media_url_https": "https://pbs.twimg.com/media/HRtulSOWwAAbmMq.jpg",
"original_info": {
"focus_rects": [],
"height": 405,
"width": 720
},
"sizes": {
"large": {
"h": 405,
"w": 720
}
},
"type": "video",
"url": "https://t.co/9KvAp1aISd",
"video_info": {
"aspect_ratio": [
16,
9
],
"duration_millis": 66766,
"variants": [
{
"content_type": "application/x-mpegURL",
"url": "https://video.twimg.com/amplify_video/2097391565207433216/pl/IFeoh1uoE9ZqsZvN.m3u8?tag=16&v=660"
},
{
"bitrate": 288000,
"content_type": "video/mp4",
"url": "https://video.twimg.com/amplify_video/2097391565207433216/vid/avc1/480x270/hNeSFJijBJYVXqI9.mp4?tag=16"
}
]
}
}
]
},
"card": null,
"place": {},
"entities": {},
"quoted_tweet": null,
"retweeted_tweet": null,
"isLimitedReply": false,
"communityInfo": null,
"article": null
},
"isLimitedReply": false,
"communityInfo": null,
"article": null
},
{
"type": "tweet",
"id": "2097361251856781396",
"url": "https://x.com/NASA/status/2097361251856781396",
"twitterUrl": "https://twitter.com/NASA/status/2097361251856781396",
"text": "This 'superbubble' in the Large Magellanic Cloud is over 200 light-years across—and it's helping astronomers study how stars are born. More from @NASAHubble: https://t.co/NvJuk0az2R https://t.co/DH2d0iQM7q",
"source": "Twitter for iPhone",
"retweetCount": 285,
"replyCount": 91,
"likeCount": 2041,
"quoteCount": 17,
"viewCount": 341789,
"createdAt": "Tue Sep 08 16:27:44 +0000 2026",
"lang": "en",
"bookmarkCount": 80,
"isReply": false,
"inReplyToId": null,
"conversationId": "2097361251856781396",
"displayTextRange": [
0,
181
],
"inReplyToUserId": null,
"inReplyToUsername": null,
"author": {
"type": "user",
"userName": "NASA",
"url": "https://x.com/NASA",
"twitterUrl": "https://twitter.com/NASA",
"id": "11348282",
"name": "NASA",
"isVerified": false,
"isBlueVerified": true,
"verifiedType": "Government",
"profilePicture": "https://pbs.twimg.com/profile_images/1321163587679784960/0ZxKlEKB_normal.jpg",
"coverPicture": "https://pbs.twimg.com/profile_banners/11348282/1775567134",
"description": "",
"location": "Pale Blue Dot",
"followers": 92386707,
"following": 117,
"status": "",
"canDm": false,
"canMediaTag": true,
"createdAt": "Wed Dec 19 20:20:32 +0000 2007",
"entities": {
"description": {
"urls": []
},
"url": {}
},
"fastFollowersCount": 0,
"favouritesCount": 16985,
"hasCustomTimelines": true,
"isTranslator": true,
"mediaCount": 28138,
"statusesCount": 74279,
"withheldInCountries": [],
"affiliatesHighlightedLabel": {},
"possiblySensitive": false,
"pinnedTweetIds": [],
"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/9NkQJKAVks"
}
]
}
}
},
"isAutomated": false,
"automatedBy": null
},
"extendedEntities": {
"media": [
{
"display_url": "pic.x.com/DH2d0iQM7q",
"expanded_url": "https://x.com/NASA/status/2097361251856781396/photo/1",
"ext_alt_text": "Blue and orange stars shine through a wispy bubble of gas; the center is mostly clear, but blue and gray tendrils snake throughout most of the rest of the image. The background of the image is filled with other stars. Credit: NASA, ESA/Hubble, D. Gouliermis",
"ext_master_playlist_only": [],
"ext_media_availability": {
"status": "Available"
},
"ext_playlists": [],
"features": {
"large": {
"faces": [
{
"h": 66,
"w": 66,
"x": 907,
"y": 730
}
]
},
"orig": {
"faces": [
{
"h": 66,
"w": 66,
"x": 907,
"y": 730
}
]
}
},
"id_str": "2097361248950038528",
"indices": [
182,
205
],
"media_key": "3_2097361248950038528",
"media_results": {
"id": "QXBpTWVkaWFSZXN1bHRzOgwAAQoAAR0bUvGRVjAACgACHRtS8j6XkFQAAA==",
"result": {
"__typename": "ApiMedia",
"id": "QXBpTWVkaWE6DAABCgABHRtS8ZFWMAAKAAIdG1LyPpeQVAAA",
"media_key": "3_2097361248950038528"
}
},
"media_url_https": "https://pbs.twimg.com/media/HRtS8ZFWMAAePQs.jpg",
"original_info": {
"focus_rects": [
{
"h": 717,
"w": 1280,
"x": 0,
"y": 0
},
{
"h": 1018,
"w": 1018,
"x": 0,
"y": 0
}
],
"height": 1018,
"width": 1280
},
"sizes": {
"large": {
"h": 1018,
"w": 1280
}
},
"type": "photo",
"url": "https://t.co/DH2d0iQM7q"
}
]
},
"card": null,
"place": {},
"entities": {
"urls": [
{
"display_url": "go.nasa.gov/4iSadO3",
"expanded_url": "https://go.nasa.gov/4iSadO3",
"indices": [
158,
181
],
"url": "https://t.co/NvJuk0az2R"
}
],
"user_mentions": [
{
"id_str": "14091091",
"indices": [
145,
156
],
"name": "Hubble",
"screen_name": "NASAHubble"
}
]
},
"quoted_tweet": null,
"retweeted_tweet": null,
"isLimitedReply": false,
"communityInfo": null,
"article": null
}
],
"result_key": "tweets",
"pin_tweet": null,
"has_next_page": true,
"next_cursor": "DAADDAABCgABHRtv878WscEKAAIdD5MFYVagNAAIAAIAAAACCAADAAAAAAgABAAAAAAKAAUdG4TPyoAnEAoABh0bhM_Kf9jwCwAHAAAA8EVtUEM2d0FBQWZRL2dHSk4wdkdwL0FBQUFCUWRHMUx5UHBlUVZCMFdHT3E3Vm9BT0hSSUU3cWRYQUJnZEQ2azVVRmF3bkIwUHEvN0NGdEc5SFJLR3Y2N1gwSk1kRlNSWmN0ZUFUeDBSSUhXR1Y4Q3pIUlBUU045VzhmQWRFVkd1VzFiQWF4MFhkaEEvMXBENkhSdHY4NzhXc2NFZEVvUndlSmV4R3gwUGt3VmhWcUEwSFErVUtXMVhBQ1FkRVV5QWh0Y2hyQjBSWk5veWx3QWpIUkdCYndaWE1ESWRF…"
}
}Getting more results
Each response includes a cursor. Pass it back as cursor to fetch the next 20 tweets. Repeat until no cursor is returned.
# Call 1 — first 20 tweets
curl "https://fastfetchz.com/v1/x/posts-user-posts?target=nasa" \
-H "X-API-Key: $FASTFETCHZ_KEY"
# -> { "data": { ... }, "cursor": "eyJwYWdlIjoyfQ" }
# Call 2 — next 20 tweets
curl "https://fastfetchz.com/v1/x/posts-user-posts?target=nasa&cursor=eyJwYWdlIjoyfQ" \
-H "X-API-Key: $FASTFETCHZ_KEY"Limits
- Maximum per call: 20 tweets.
- Minimum per call: 1 tweet — a target with less data returns fewer tweets, and an empty result is still a successful call.
- Each call fetches a full page of up to 20 and costs the same either way. Pass limit to receive fewer than that in the response.
- Larger jobs are paginated with a cursor; there is no cap on how many pages you fetch.
What this costs in practice
200,000 tweets = 10,000 calls × 3 credits per call = 30,000 credits = $0.00
Priced at the Custom pack rate: 1,000,000 credits for $0.00.
Open in the pricing calculator