A clean JSON mirror of X — profiles, timelines, tweets, search, lists, followers and following. No API keys, no signup, no rate-limit dashboards. Just $0.01 per request in USDC on Base or Solana, settled over x402.
Skill file, MCP server, or A2A — pick whichever fits your stack. All three are backed by the same paid-per-call API.
ReadX ships an agent-readable skill file. Point any x402-capable agent at the URL below and it learns every endpoint, the payment flow, and how to read X data — paying per call from its own wallet.
@readx/mcp exposes every ReadX endpoint — profile, timeline, followers, tweets, search, lists and more — as a native tool. It runs locally over stdio; a wallet on your machine signs each call's x402 payment itself, so no key ever leaves your machine.
ReadX publishes an A2A AgentCard listing every capability as a named skill, served over the HTTP+JSON transport. An A2A-aware orchestrator can dispatch a skill directly instead of calling /api/* paths itself — each call is priced the same as any other endpoint.
Or fetch it directly: curl https://readx.sh/skill.md
Using another MCP host? Copy launch command gives you the raw command some hosts want typed directly into their server config, instead of JSON — paste it there, not into a terminal, since the host needs to run the process itself to talk to it.
No PRIVATE_KEY? The server generates a wallet on first run, saved locally to ~/.readx/mcp/wallet.json. Fund that address with USDC on Base — every tool pays for itself per call, the same $0.01 as a direct request.
curl -s -X POST https://readx.sh/api/a2a/v1/message:send \
-H 'Content-Type: application/json' \
-d '{"message":{"role":"user","parts":[{"kind":"data","data":{"skill":"profile-lookup","input":{"username":"jack"}}}]}}'Agent card: https://readx.sh/.well-known/agent-card.json
Every endpoint is a paid GET under /api, settled per call via x402. Most responses are JSON wrapped as {"code":0,"data":…} on success. Expand an endpoint for parameters, an example response, and a live "Try it" link.
Base URL https://readx.sh/api
Everything about an account: timeline, bio, stats, followers, following and metadata.
A user's timeline: tweets, retweets and quotes.
https://readx.sh/api/jack// 3 keys"code": 0,"data": , // 2 keys"timeline": , // 1 item// 25 keys"id": "2081521410065797330","threadId": "2081521410065797330","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514828,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "indeed","time": 1785108351,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 56,"retweets": 34,"likes": 772,"quotes": 0,"views": 228862},"retweet": null,"attribution": null,"mediaTags": null,"quote": , // 25 keys"id": "2081507423395946937","threadId": "2081507423395946937","replyId": "0","user": , // 18 keys"id": "40807571","username": "jtwald","fullname": "justin waldron","location": "","website": "","bio": "founder @playableint co-founder @zynga, @playco","userPic": "https://pbs.twimg.com/profile_images/1991769732585029632/13KzOkMF.jpg","banner": "https://pbs.twimg.com/profile_banners/40807571/1753993537","pinnedTweet": "0","following": 2312,"followers": 641755,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 0},"text": "Every frontier lab is going to copy Buzz. The problem is this layer is winner-take-most. You can’t win without open models. And owning the models doesn’t help you win.","time": 1785105016,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 14,"retweets": 8,"likes": 238,"quotes": 0,"views": 245639},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}],"pinned": // 25 keys"id": "1833951636005552366","threadId": "1833951636005552366","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514828,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "We reject: kings, presidents, and voting. We believe in: rough consensus and running code. —David Clark, 1992","time": 1726083117,"reply": , // empty],"pinned": true,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 3901,"retweets": 4373,"likes": 27040,"quotes": 0,"views": 8433486},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}},"pagination": // 4 keys"has_more": true,"is_first_page": true,"next_cursor": "DAAHCgABHOOdjVL__-oLAAIAAAATMjA4MTAxMDA0NTMyMDM1NjA0OAgAAwAAAAIAAA","top_cursor": "DAAHCgABHOOdjVMAJxELAAIAAAATMjA4MTUyMTQxMDA2NTc5NzMzMAgAAwAAAAEAAA"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A user's timeline including their replies.
https://readx.sh/api/jack/with_replies// 3 keys"code": 0,"data": , // 2 keys"timeline": , // 2 items, // 25 keys"id": "2081521410065797330","threadId": "2081521410065797330","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514893,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "indeed","time": 1785108351,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 56,"retweets": 34,"likes": 772,"quotes": 1,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": , // 25 keys"id": "2081507423395946937","threadId": "2081507423395946937","replyId": "0","user": , // 18 keys"id": "40807571","username": "jtwald","fullname": "justin waldron","location": "","website": "","bio": "founder @playableint co-founder @zynga, @playco","userPic": "https://pbs.twimg.com/profile_images/1991769732585029632/13KzOkMF.jpg","banner": "https://pbs.twimg.com/profile_banners/40807571/1753993537","pinnedTweet": "0","following": 2312,"followers": 641755,"tweets": 667,"likes": 11116,"media": 32,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1242618555},"text": "Every frontier lab is going to copy Buzz. The problem is this layer is winner-take-most. You can’t win without open models. And owning the models doesn’t help you win.","time": 1785105016,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 14,"retweets": 8,"likes": 238,"quotes": 3,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": , // 25 keys"id": "2081265718163919051","threadId": "2081265718163919051","replyId": "0","user": , // 18 keys"id": "","username": "","fullname": "","location": "","website": "","bio": "","userPic": "","banner": "","pinnedTweet": "0","following": 0,"followers": 0,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 0},"text": "","time": 0,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},// 25 keys"id": "2081484649386135761","threadId": "2081484649386135761","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514893,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "yes","time": 1785099587,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 47,"retweets": 28,"likes": 341,"quotes": 1,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": , // 25 keys"id": "2081094210455752845","threadId": "2080081770436022335","replyId": "2081091225361277152","user": , // 18 keys"id": "2075202984577728512","username": "tlongwell_bzz","fullname": "Tyler Longwell 🐝","location": "","website": "","bio": "Head Beekeeper @ Buzz 🐝","userPic": "https://pbs.twimg.com/profile_images/2075203785412993024/xKtS2lLU.jpg","banner": "","pinnedTweet": "2079608896805884137","following": 34,"followers": 399,"tweets": 106,"likes": 133,"media": 4,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1783601921},"text": "@derekmross @tylersookochoff @Hello_World Nostr made having agents on the relay much less scary. I wouldn’t trust a third party to control my agents on my machine. Having them controlled only by you in a cryptographically verifiable way is the only thing that makes sense.","time": 1785006499,"reply": , // 1 item"derekmross"],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 10,"retweets": 9,"likes": 90,"quotes": 3,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}],"pinned": // 25 keys"id": "1833951636005552366","threadId": "1833951636005552366","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514893,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "We reject: kings, presidents, and voting. We believe in: rough consensus and running code. —David Clark, 1992","time": 1726083117,"reply": , // empty],"pinned": true,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 3901,"retweets": 4373,"likes": 27040,"quotes": 713,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}},"pagination": // 4 keys"has_more": true,"is_first_page": true,"next_cursor": "DAAHCgABHOOd9oR__-oLAAIAAAATMjA4MTAyNzk0NDEzOTM4MzE1OAgAAwAAAAIAAA","top_cursor": "DAAHCgABHOOd9oSAJxELAAIAAAATMjA4MTUyMTQxMDA2NTc5NzMzMAgAAwAAAAEAAA"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A user's timeline filtered to tweets with media.
https://readx.sh/api/jack/with_media// 3 keys"code": 0,"data": , // 1 key"timeline": // 2 items, // 25 keys"id": "2081338409260400913","threadId": "2081338409260400913","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514470,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "https://t.co/tZ7YRJYWrL","time": 1785064720,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 153,"retweets": 186,"likes": 3797,"quotes": 40,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": , // 1 item// 3 keys"type": "photo","url": "https://pbs.twimg.com/media/HOJmNdSXkAE_Ksq.jpg","altText": ""}],"history": null,"note": null,"isAd": false,"isAI": false},// 11 keys"id": "2080751110441070842","threadId": "2080751110441070842","replyId": "0","user": , // 5 keys"id": "12","username": "jack","fullname": "jack","followers": 10514470,"verifiedType": "Blue"},"text": "it's @bradleyaxen https://youtu.be/Prdk7Mf2X0M","time": 1784924697,"stats": , // 5 keys"replies": 13,"retweets": 32,"likes": 177,"quotes": 2,"views": 0},"card": , // 6 keys"kind": "summary_large_image","url": "https://youtu.be/Prdk7Mf2X0M","title": "21 in 21: Bradley Axen on Buzz, goose, and AI at Block","dest": "youtube.com","text": "Haley Berkoe sits down with Bradley Axen, who is leading many of Bl...","image": ""},"media": null,"isAd": false,"isAI": false}]},"pagination": // 4 keys"has_more": true,"is_first_page": true,"next_cursor": "DAABCgABHOOePae___EKAAIcUtIUJNeBPwgAAwAAAAIAAA","top_cursor": "DAABCgABHOOePafAJxEKAAIc4mZBfVfBEQgAAwAAAAEAAA"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Full profile: bio, counts, banner, pinned tweet and a photo rail.
https://readx.sh/api/jack/profile// 2 keys"code": 0,"data": // 3 keys"user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10513067,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"photoRail": , // 2 items, // 3 keys"url": "https://pbs.twimg.com/media/HOJmNdSXkAE_Ksq.jpg","tweetId": "2081338409260400913","color": ""},// 3 keys"url": "https://pbs.twimg.com/card_img/2080687268860194816/iLun5F28?format=jpg&name=800x320_1","tweetId": "2080691495586124028","color": ""}],"pinned": // 25 keys"id": "1833951636005552366","threadId": "1833951636005552366","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "0","following": 3,"followers": 10513067,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 0},"text": "We reject: kings, presidents, and voting. We believe in: rough consensus and running code. —David Clark, 1992","time": 1726083117,"reply": , // empty],"pinned": true,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 3901,"retweets": 4373,"likes": 27036,"quotes": 0,"views": 8432190},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Account info: join date, base location, verification, username changes.
https://readx.sh/api/jack/about// 2 keys"code": 0,"data": // 15 keys"username": "jack","fullname": "jack","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","joinDate": 1142974214,"verifiedType": "Blue","suspended": false,"basedIn": "United Kingdom","source": "United States App Store","usernameChanges": 0,"lastUsernameChange": 0,"affiliateUsername": "Square","affiliateLabel": "Square","isIdentityVerified": false,"verifiedSince": 1324658988,"overrideVerifiedYear": 0}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Just the user's pinned tweet, if any.
https://readx.sh/api/jack/pinned// 2 keys"code": 0,"data": // 25 keys"id": "1833951636005552366","threadId": "1833951636005552366","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "0","following": 3,"followers": 10513068,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 0},"text": "We reject: kings, presidents, and voting. We believe in: rough consensus and running code. —David Clark, 1992","time": 1726083117,"reply": , // empty],"pinned": true,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 3901,"retweets": 4373,"likes": 27036,"quotes": 0,"views": 8432190},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A user's followers (~200 per page; paginate with cursor until has_more is false).
https://readx.sh/api/jack/followers// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "2081681783473709056","username": "gouravbagks","fullname": "gouravbag","location": "","website": "https://x.com/gouravbagks","bio": "","userPic": "https://abs.twimg.com/sticky/default_profile_images/default_profile_400x400.png","banner": "","pinnedTweet": "0","following": 34,"followers": 0,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1785146646},, // 18 keys"id": "2081680876157493248","username": "Agammemnonade","fullname": "Agammemnon","location": "","website": "https://x.com/Agammemnonade","bio": "","userPic": "https://abs.twimg.com/sticky/default_profile_images/default_profile_400x400.png","banner": "","pinnedTweet": "0","following": 51,"followers": 0,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1785146572},// 18 keys"id": "2081681764838203392","username": "leminah3pag","fullname": "leminah","location": "","website": "https://x.com/leminah3pag","bio": "","userPic": "https://abs.twimg.com/sticky/default_profile_images/default_profile_400x400.png","banner": "","pinnedTweet": "0","following": 16,"followers": 0,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1785146634}],"total_count": 200},"pagination": // 2 keys"has_more": true,"next_cursor": "1871861618961133671"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A user's followers as shown on the web (~70 per page, capped at ~800; paginate with cursor until has_more is false).
https://readx.sh/api/jack/followers_web// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "1337780902680809474","username": "DocumentingBTC","fullname": "Documenting ₿itcoin 📄","location": "Tag @ with post submissions","website": "https://x.com/DocumentingBTC","bio": "The ₿est of ₿itcoin","userPic": "https://pbs.twimg.com/profile_images/1369025687743500288/-4tdBSu5_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1337780902680809474/1675437171","pinnedTweet": "0","following": 1933,"followers": 1122928,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1607786802},, // 18 keys"id": "13418472","username": "willywoo","fullname": "Willy Woo","location": "Hong Kong","website": "https://x.com/willywoo","bio": "I do numbers, mainly #Bitcoin related. I only post here, all other channels including Telegram are scams.","userPic": "https://pbs.twimg.com/profile_images/1714708774710374400/-3BGVJUc_normal.jpg","banner": "","pinnedTweet": "0","following": 338,"followers": 1237109,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1202882252},// 18 keys"id": "893818632089763840","username": "PeterMcCormack","fullname": "Peter McCormack 🏴☠️🇬🇧🇮🇪","location": "Bedford, England","website": "https://x.com/PeterMcCormack","bio": "Host of The Peter McCormack Show, Chairman of @realbedford, retired rapper, grifter, budget Ryan Reynolds.","userPic": "https://pbs.twimg.com/profile_images/1966034011299422208/yA6987HI_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/893818632089763840/1739865160","pinnedTweet": "0","following": 4446,"followers": 615789,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1501937943}],"total_count": 70},"pagination": // 2 keys"has_more": true,"next_cursor": "1871866870368554008|2081702116358881208"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Accounts a user follows (~200 per page; paginate with cursor until has_more is false).
https://readx.sh/api/jack/following// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "1246440482760085504","username": "Stella_Assange","fullname": "Stella Assange","location": "","website": "https://x.com/Stella_Assange","bio": "Via @UniOfOxford @SOAS Insta: StellaAssange","userPic": "https://pbs.twimg.com/profile_images/1851588578821672960/D62y2_6P_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/1246440482760085504/1719901157","pinnedTweet": "0","following": 4506,"followers": 268797,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1586009718},, // 18 keys"id": "2916305152","username": "Snowden","fullname": "Edward Snowden","location": "","website": "https://x.com/Snowden","bio": "I used to work for the government, but now I work for the public.","userPic": "https://pbs.twimg.com/profile_images/648888480974508032/66_cUYfj_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/2916305152/1443542022","pinnedTweet": "0","following": 1,"followers": 5544288,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1418333068},// 18 keys"id": "44196397","username": "elonmusk","fullname": "Elon Musk","location": "","website": "https://x.com/elonmusk","bio": "","userPic": "https://pbs.twimg.com/profile_images/2053244804520427520/m8mdWZCG_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/44196397/1774145451","pinnedTweet": "0","following": 1375,"followers": 241017564,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1243973549}],"total_count": 3},"pagination": // 1 key"has_more": false}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Accounts a user follows as shown on the web (~70 per page, capped at ~800; paginate with cursor until has_more is false).
https://readx.sh/api/jack/following_web// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "1246440482760085504","username": "Stella_Assange","fullname": "Stella Assange","location": "","website": "https://x.com/Stella_Assange","bio": "Via @UniOfOxford @SOAS Insta: StellaAssange","userPic": "https://pbs.twimg.com/profile_images/1851588578821672960/D62y2_6P_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1246440482760085504/1719901157","pinnedTweet": "0","following": 4506,"followers": 268800,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1586009718},, // 18 keys"id": "2916305152","username": "Snowden","fullname": "Edward Snowden","location": "","website": "https://x.com/Snowden","bio": "I used to work for the government, but now I work for the public.","userPic": "https://pbs.twimg.com/profile_images/648888480974508032/66_cUYfj_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/2916305152/1443542022","pinnedTweet": "0","following": 1,"followers": 5544261,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1418333068},// 18 keys"id": "44196397","username": "elonmusk","fullname": "Elon Musk","location": "","website": "https://x.com/elonmusk","bio": "","userPic": "https://pbs.twimg.com/profile_images/2053244804520427520/m8mdWZCG_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/44196397/1774145451","pinnedTweet": "0","following": 1375,"followers": 241017311,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1243973549}],"total_count": 3},"pagination": // 2 keys"has_more": true,"next_cursor": "0|2081702117097078779"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A user's verified followers (~200 per page; paginate with cursor until has_more is false).
https://readx.sh/api/jack/verified_followers// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "2081665007461265408","username": "smilealice2026","fullname": "smile alice","location": "","website": "https://x.com/smilealice2026","bio": "","userPic": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png","banner": "","pinnedTweet": "0","following": 17,"followers": 0,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1785142637},, // 18 keys"id": "2056566076381786112","username": "Himanshhhuxxle","fullname": "Hi-man-shhhuuuu","location": "","website": "https://x.com/Himanshhhuxxle","bio": "","userPic": "https://pbs.twimg.com/profile_images/2056568080663490560/JuTQYg5u_normal.jpg","banner": "","pinnedTweet": "0","following": 23,"followers": 0,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1779158591},// 18 keys"id": "80633138","username": "antrix1984","fullname": "Antrix Bindal","location": "New Delhi","website": "https://x.com/antrix1984","bio": "Bhartiya Businessman , Connoisseur of all things fine in life..Interested in Tech , History , Culture & anything that makes a Person , Society or Country great.","userPic": "https://pbs.twimg.com/profile_images/1971663078367563776/A_y2WYoh_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/80633138/1589821425","pinnedTweet": "0","following": 2462,"followers": 345,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1254937097}],"total_count": 20},"pagination": // 2 keys"has_more": true,"next_cursor": "1871860719628091507|2081682489922813930"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Tweets that mention a user (paginate with cursor until has_more is false).
https://readx.sh/api/jack/mentions// 3 keys"code": 0,"data": , // 2 keys"tweets": , // 3 items, // 25 keys"id": "2081682567338573865","threadId": "2081483631579566277","replyId": "2081679335707050370","user": , // 18 keys"id": "21558351","username": "GbemiEreku","fullname": "G'bemi Ereku","location": "","website": "https://x.com/GbemiEreku","bio": "CEO, VerifyCode","userPic": "https://pbs.twimg.com/profile_images/2068619618650857473/J4pOqeAB_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/21558351/1781652266","pinnedTweet": "0","following": 3010,"followers": 4853,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1235299442},"text": "I watched the entire video and it was fair coverage in my opinion. ...","time": 1785146774,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter for iPhone","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},, // 25 keys"id": "2081682119429161103","threadId": "2081395270579835252","replyId": "2081395270579835252","user": , // 18 keys"id": "499545927","username": "CryptoRusputin","fullname": "Rasputin","location": "","website": "https://x.com/CryptoRusputin","bio": "","userPic": "https://pbs.twimg.com/profile_images/1753663624047128576/Gyqg1JHQ_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/499545927/1679149047","pinnedTweet": "0","following": 198,"followers": 166,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1329894415},"text": "@jack That's a mono!!","time": 1785146667,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter for Android","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 2},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},// 25 keys"id": "2081681924238811176","threadId": "1910829254214115681","replyId": "1911172569241411985","user": , // 18 keys"id": "802295423633412096","username": "runequantum","fullname": "Daniel Fredriksen","location": "","website": "https://x.com/runequantum","bio": "Chaotic neutral","userPic": "https://pbs.twimg.com/profile_images/1959229785177047040/vOw_ajs__normal.jpg","banner": "https://pbs.twimg.com/profile_banners/802295423633412096/1745728488","pinnedTweet": "0","following": 842,"followers": 618,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1480117109},"text": "@jack @NicoleShanahan Not every inventor has, nor should have, a manufacturing base.","time": 1785146621,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter for Android","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 1},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}],"total_count": 20},"pagination": // 2 keys"has_more": true,"next_cursor": "DAADDAABCgABHOOfRAlWwCkKAAIc45aqllfB-gAIAAIAAAACCAADAAAAAAgABAAAAAAKAAUc459PZgAnEAoABhzjn09l_9jwAAA"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A user's tweets that contain media (~20 per page; paginate with cursor until has_more is false).
https://readx.sh/api/jack/media// 3 keys"code": 0,"data": , // 2 keys"tweets": , // 1 item// 25 keys"id": "2081338409260400913","threadId": "2081338409260400913","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514470,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "https://t.co/tZ7YRJYWrL","time": 1785064720,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter Web App","stats": , // 5 keys"replies": 153,"retweets": 186,"likes": 3797,"quotes": 40,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": , // 1 item// 3 keys"type": "photo","url": "https://pbs.twimg.com/media/HOJmNdSXkAE_Ksq.jpg","altText": ""}],"history": null,"note": null,"isAd": false,"isAI": false}],"total_count": 20},"pagination": // 2 keys"has_more": true,"next_cursor": "DAABCgABHAYpKoW___0..."}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Accounts affiliated with a user (e.g. an organization's members).
https://readx.sh/api/OpenAI/affiliates// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "1605","username": "sama","fullname": "Sam Altman","location": "SF","website": "https://x.com/sama","bio": "AI is cool i guess","userPic": "https://pbs.twimg.com/profile_images/2046764873200394240/r7BxVezs_400x400.jpg","banner": "","pinnedTweet": "0","following": 1020,"followers": 5642982,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1153087315},, // 18 keys"id": "6112332","username": "fidjissimo","fullname": "Fidji Simo","location": "","website": "https://x.com/fidjissimo","bio": "CEO of Applications, OpenAI","userPic": "https://pbs.twimg.com/profile_images/1422212886487658496/oUzs06MX_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/6112332/1588311648","pinnedTweet": "0","following": 835,"followers": 497463,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1179417668},// 18 keys"id": "162124540","username": "gdb","fullname": "Greg Brockman","location": "","website": "https://x.com/gdb","bio": "President & Co-Founder @OpenAI","userPic": "https://pbs.twimg.com/profile_images/1347621377503711233/bHg3ipfD_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/162124540/1399179172","pinnedTweet": "0","following": 8,"followers": 1020458,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1278099489}],"total_count": 7},"pagination": // 1 key"has_more": false}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Whether one user follows another, plus block/mute/DM flags.
https://readx.sh/api/elonmusk/relations?name=elonmusk// 2 keys"code": 0,"data": // 8 keys"source": "jack","target": "elonmusk","sourceFollowsTarget": true,"targetFollowsSource": false,"canDm": false,"blocking": false,"blockedBy": false,"muting": false}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Profile info: id, bio, location, follower/following counts, verification.
https://readx.sh/api/jack/info// 2 keys"code": 0,"data": // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514780,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A single tweet with its full conversation: tweets before, after and replies.
https://readx.sh/api/jack/tweets/20// 2 keys"code": 0,"data": // 4 keys"tweet": , // 25 keys"id": "20","threadId": "20","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "0","following": 3,"followers": 10514658,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 0},"text": "just setting up my twttr","time": 1142974214,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 17963,"retweets": 124841,"likes": 309846,"quotes": 0,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},"before": , // 1 key"tweets": // empty]},"after": , // 3 keys"tweets": , // empty],"hasMore": false,"cursor": ""},"replies": // 4 keys"beginning": true,"top": "","bottom": "DAAKCgABHOOfkFy...(truncated)","tweets": // 2 items, // 25 keys"id": "1903105387932295260","threadId": "1903105387932295260","replyId": "20","user": , // 18 keys"id": "1401868242352807936","username": "kwanelencube07","fullname": "#lovesosa","location": "","website": "","bio": "Libra. That all I can say","userPic": "https://pbs.twimg.com/profile_images/1562567493004181504/y8548EPI.jpg","banner": "https://pbs.twimg.com/profile_banners/1401868242352807936/1688828107","pinnedTweet": "0","following": 773,"followers": 123,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 0},"text": "@jack Hey @grok is this real was this in 2006?","time": 1742570657,"reply": , // 1 item"jack"],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 17,"retweets": 7,"likes": 146,"quotes": 0,"views": 426818},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},// 25 keys"id": "1903106713588568359","threadId": "1903106713588568359","replyId": "1903105387932295260","user": , // 18 keys"id": "1720665183188922368","username": "grok","fullname": "Grok","location": "","website": "","bio": "@grok it","userPic": "https://pbs.twimg.com/profile_images/2057885623374290944/lmj0pawP.jpg","banner": "https://pbs.twimg.com/profile_banners/1720665183188922368/1778202520","pinnedTweet": "0","following": 5,"followers": 8879305,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Business","protected": false,"suspended": false,"joinDate": 0},"text": "@kwanelencube07 @jack Hey ... (truncated)","time": 1742570973,"reply": , // 1 item"kwanelencube07"],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 13,"retweets": 21,"likes": 356,"quotes": 0,"views": 221420},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}]}}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
A tweet's edit history: the latest version plus every prior revision.
https://readx.sh/api/jack/tweets/20/history// 2 keys"code": 0,"data": // 2 keys"latest": , // 25 keys"id": "20","threadId": "20","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10514668,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "just setting up my twttr","time": 1142974214,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 17963,"retweets": 124841,"likes": 309846,"quotes": 6798,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},"history": // empty]}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Single tweets, their full conversation threads, and edit history.
A single tweet on its own, without the surrounding conversation.
https://readx.sh/api/tweets/20// 2 keys"code": 0,"data": // 25 keys"id": "20","threadId": "20","replyId": "0","user": , // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "http://primal.net/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "1833951636005552366","following": 3,"followers": 10513057,"tweets": 30783,"likes": 39905,"media": 2973,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},"text": "just setting up my twttr","time": 1142974214,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 17963,"retweets": 124845,"likes": 309833,"quotes": 6798,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Replies to a tweet (paginate with cursor until has_more is false).
https://readx.sh/api/tweets/20/replies// 3 keys"code": 0,"data": , // 2 keys"tweets": , // 3 items, // 25 keys"id": "1903105387932295260","threadId": "20","replyId": "20","user": , // 18 keys"id": "1401868242352807936","username": "kwanelencube07","fullname": "#lovesosa","location": "Pretoria, South Africa","website": "https://x.com/kwanelencube07","bio": "Libra. That all I can say","userPic": "https://pbs.twimg.com/profile_images/1562567493004181504/y8548EPI_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1401868242352807936/1688828107","pinnedTweet": "0","following": 774,"followers": 123,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1623066440},"text": "@jack Hey @grok is this real was this in 2006?","time": 1742570657,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter for Android","stats": , // 5 keys"replies": 17,"retweets": 7,"likes": 146,"quotes": 2,"views": 426818},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},, // 25 keys"id": "1903106713588568359","threadId": "20","replyId": "1903105387932295260","user": , // 18 keys"id": "1720665183188922368","username": "grok","fullname": "Grok","location": "","website": "https://x.com/grok","bio": "@grok it","userPic": "https://pbs.twimg.com/profile_images/2057885623374290944/lmj0pawP_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1720665183188922368/1778202520","pinnedTweet": "0","following": 5,"followers": 8879277,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1699073554},"text": "Hey @kwanelencube07, let's dig into this! (truncated)","time": 1742570973,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Ask Grok","stats": , // 5 keys"replies": 13,"retweets": 21,"likes": 357,"quotes": 3,"views": 221420},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},// 25 keys"id": "2080119601149493402","threadId": "20","replyId": "20","user": , // 18 keys"id": "2034749496777912320","username": "McDonaldOtoyo2","fullname": "McDonald","location": "In heavenly places","website": "https://x.com/McDonaldOtoyo2","bio": "I make posts","userPic": "https://pbs.twimg.com/profile_images/2054006108843364353/tRzorecz_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/2034749496777912320/1779266839","pinnedTweet": "0","following": 1264,"followers": 1247,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1773957151},"text": "@jack Hey @grok is this the first tweet on Twitter?","time": 1784774134,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter for Android","stats": , // 5 keys"replies": 1,"retweets": 0,"likes": 0,"quotes": 0,"views": 835},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}],"total_count": 36},"pagination": // 2 keys"has_more": true,"next_cursor": "DAAKCgABHOOfxJc...(truncated)"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Accounts that retweeted a tweet (paginate with cursor until has_more is false).
https://readx.sh/api/tweets/20/retweeters// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "1841874951130787842","username": "legaltwinkiie","fullname": "Liam Leigh","location": "VIP CHANNEL","website": "https://x.com/legaltwinkiie","bio": "Curious twink looking for fun😝 Full access and private chats on my OF 18+🥵","userPic": "https://pbs.twimg.com/profile_images/1987825345110720512/4agwbcoC_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1841874951130787842/1727979426","pinnedTweet": "0","following": 6,"followers": 173541,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1727972200},, // 18 keys"id": "1401004280912306182","username": "ShreekanthDeva4","fullname": "shri.eth","location": "India","website": "https://x.com/ShreekanthDeva4","bio": "web developer since 2023 | Now exploring Web3 with InfoFi","userPic": "https://pbs.twimg.com/profile_images/1950435597044355072/HBTP5Zrt_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1401004280912306182/1753856080","pinnedTweet": "0","following": 510,"followers": 276,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1622860434},// 18 keys"id": "4795462036","username": "Benjaminodeyoko","fullname": "BIG B€NZ 060 🦅","location": "Nigeria","website": "https://x.com/Benjaminodeyoko","bio": "A great supporter of anything good #WIZKID #TEMSREBELGANG #BURNABOY #DAVIDO #RAVERS #PETEROBI #OMAHLAY #ELONMUSK","userPic": "https://pbs.twimg.com/profile_images/1984559391941488640/BTEuZAmC_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/4795462036/1692531107","pinnedTweet": "0","following": 635,"followers": 552,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1452699562}],"total_count": 100},"pagination": // 2 keys"has_more": true,"next_cursor": "HBaAgICj7YjQ9jMAAA=="}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Full-text search across tweets and users.
Search tweets. Start the query with @ (or add f:user) to search users instead.
https://readx.sh/api/search?q=typescript// 3 keys"code": 0,"data": , // 1 key"timeline": // 2 items, // 25 keys"id": "2081683138887942348","threadId": "2081683138887942348","replyId": "0","user": , // 18 keys"id": "953614436756963328","username": "suoyu007","fullname": "David.Z","location": "","website": "https://t.me/baizichuhai","bio": "Connecting the world, finding myself","userPic": "https://pbs.twimg.com/profile_images/1854072585899921408/wsKiCodw.jpg","banner": "","pinnedTweet": "0","following": 400,"followers": 11,"tweets": 336,"likes": 108,"media": 4,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1516194373},"text": "推荐个做 DeFAI 开发很实用的开源 TypeScript 库 ...(truncated)","time": 1785146910,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 1},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": , // 6 keys"kind": "summary_large_image","url": "https://github.com/edwin-finance/edwin","title": "GitHub - edwin-finance/edwin","dest": "github.com","text": "Empowering AI agents to dominate DeFAI.","image": "https://pbs.twimg.com/card_img/2079628348242759681/zMaw8oHI?format=jpg&name=800x419"},"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},// 25 keys"id": "2081681106089156752","threadId": "2081681100892500289","replyId": "2081681104419860799","user": , // 18 keys"id": "1795402815298486272","username": "AINativeF","fullname": "AI Native Foundation","location": "London","website": "https://ainativefoundation.org/","bio": "Non-profit Org.","userPic": "https://pbs.twimg.com/profile_images/1834441076733870081/ep5h4RSr.png","banner": "https://pbs.twimg.com/profile_banners/1795402815298486272/1734063758","pinnedTweet": "2043964281457389951","following": 5196,"followers": 6575,"tweets": 12256,"likes": 4230,"media": 9207,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1716892392},"text": "http://ditto.site programmatically clones a live website ...(truncated)","time": 1785146426,"reply": , // 1 item"AINativeF"],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "","stats": , // 5 keys"replies": 1,"retweets": 0,"likes": 0,"quotes": 0,"views": 6},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": , // 1 item// 3 keys"type": "photo","url": "https://pbs.twimg.com/media/HOOd7AgWgAAxbzr.jpg","altText": ""}],"history": null,"note": null,"isAd": false,"isAI": false}]},"pagination": // 4 keys"has_more": true,"is_first_page": true,"next_cursor": "DAADDAABCgABHOOfyRxWAMwKAAIc44k9SxYxfAAIAAIAAAACCAADAAAAAAgABAAAAAAKAAUc45_n-IAnEAoABhzjn-f4f9jwAAA","top_cursor": "DAADDAABCgABHOOfyRxWAMwKAAIc44k9SxYxfAAIAAIAAAABCAADAAAAAAgABAAAAAAKAAUc45_n-IAnEAoABhzjn-f4f9jwAAA"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Search for users by query (paginate with cursor until has_more is false).
https://readx.sh/api/search/users?q=jack// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "12","username": "jack","fullname": "jack","location": "","website": "https://x.com/jack","bio": "no state is the best state","userPic": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/12/1742427520","pinnedTweet": "0","following": 3,"followers": 10514837,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1142974214},, // 18 keys"id": "1033152632527892480","username": "JacksonWang852","fullname": "Jackson Wang","location": "","website": "https://x.com/JacksonWang852","bio": "MAGICMAN 2.","userPic": "https://pbs.twimg.com/profile_images/1889256348556111873/fd9O6C1i_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/1033152632527892480/1752819822","pinnedTweet": "0","following": 94,"followers": 8242708,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1535157757},// 18 keys"id": "77596200","username": "Jacksepticeye","fullname": "Jacksepticeye","location": "","website": "https://x.com/Jacksepticeye","bio": "A hoonter must hoont!","userPic": "https://pbs.twimg.com/profile_images/1949524628579160064/0yHcPxsU_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/77596200/1776267347","pinnedTweet": "0","following": 449,"followers": 7146518,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1254005764}],"total_count": 20},"pagination": // 2 keys"has_more": true,"next_cursor": "DAAFCgABHOOgBTs...(truncated)"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Search for tweets by query (paginate with cursor until has_more is false).
https://readx.sh/api/search/tweets?q=typescript// 3 keys"code": 0,"data": , // 2 keys"tweets": , // 2 items, // 25 keys"id": "2081683455763513801","threadId": "2081683455763513801","replyId": "0","user": , // 18 keys"id": "1741926466235822080","username": "fullstackizzy","fullname": "FullStackIzzy","location": "NYC, USA","website": "https://x.com/fullstackizzy","bio": "Hi, I'm Izzy!","userPic": "https://pbs.twimg.com/profile_images/1864796693297831936/ZcAQBVPq_normal.jpg","banner": "https://pbs.twimg.com/profile_banners/1741926466235822080/1771243515","pinnedTweet": "0","following": 72,"followers": 361,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1704142616},"text": "RISE & CODE! ...(truncated)","time": 1785146986,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter for iPhone","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 0},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false},// 25 keys"id": "2081683138887942348","threadId": "2081683138887942348","replyId": "0","user": , // 18 keys"id": "953614436756963328","username": "suoyu007","fullname": "David.Z","location": "","website": "https://x.com/suoyu007","bio": "Connecting the world, finding myself","userPic": "https://pbs.twimg.com/profile_images/1854072585899921408/wsKiCodw_normal.jpg","banner": "","pinnedTweet": "0","following": 400,"followers": 12,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1516194373},"text": "推荐个做 DeFAI 开发很实用的开源 TypeScript 库 ...(truncated)","time": 1785146910,"reply": , // empty],"pinned": false,"hasThread": false,"available": true,"tombstone": "","location": "","source": "Twitter Web App","stats": , // 5 keys"replies": 0,"retweets": 0,"likes": 0,"quotes": 0,"views": 3},"retweet": null,"attribution": null,"mediaTags": null,"quote": null,"card": null,"poll": null,"media": null,"history": null,"note": null,"isAd": false,"isAI": false}],"total_count": 20},"pagination": // 2 keys"has_more": true,"next_cursor": "DAADDAABCgABHOOgEuOXgckKAAIc44qeZVqhlgAIAAIAAAACCAADAAAAAAgABAAAAAAKAAUc46AZFgAnEAoABhzjoBkV_9jwAAA"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
The members of a curated X list.
The users that belong to a list (paginate with cursor until has_more is false).
https://readx.sh/api/lists/84839422/members// 3 keys"code": 0,"data": , // 2 keys"users": , // 3 items, // 18 keys"id": "1319036828964454402","username": "CommunityNotes","fullname": "Community Notes","location": "","website": "https://x.com/CommunityNotes","bio": "Empowering users to create a better-informed world.","userPic": "https://pbs.twimg.com/profile_images/1685001119934607360/Dh2Z7jCt_400x400.png","banner": "https://pbs.twimg.com/profile_banners/1319036828964454402/1690212143","pinnedTweet": "0","following": 0,"followers": 1188366,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "Blue","protected": false,"suspended": false,"joinDate": 1603317887},, // 18 keys"id": "1244731491088809984","username": "TwitterThailand","fullname": "Twitter Thailand","location": "","website": "https://x.com/TwitterThailand","bio": "Please follow @X for updates.","userPic": "https://pbs.twimg.com/profile_images/1354486384329854984/BXv7J1j2_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/1244731491088809984/1611791443","pinnedTweet": "0","following": 16,"followers": 38066,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1585602149},// 18 keys"id": "1168976680867762177","username": "TwitterAble","fullname": "Twitter Able","location": "","website": "https://x.com/TwitterAble","bio": "Please follow @X for updates.","userPic": "https://pbs.twimg.com/profile_images/1580568780828250114/QNLIImWZ_400x400.jpg","banner": "https://pbs.twimg.com/profile_banners/1168976680867762177/1665671940","pinnedTweet": "0","following": 80,"followers": 9465,"tweets": 0,"likes": 0,"media": 0,"verifiedType": "None","protected": false,"suspended": false,"joinDate": 1567540742}],"total_count": 20},"pagination": // 2 keys"has_more": true,"next_cursor": "4611686021428553846|2081683685748244458"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
What's trending — worldwide by default, or filtered to a country.
Trending topics for a location (worldwide by default; filter with country or woeid).
https://readx.sh/api/trends?country=US// 2 keys"code": 0,"data": // 7 keys"status": "success","woeid": 23424977,"location": "United States","as_of": "2026-07-27T10:10:58Z","created_at": "2026-07-26T16:17:23Z","trends_count": 50,"trends": // 3 items, // 7 keys"rank": 1,"name": "Good Monday","is_hashtag": false,"tweet_volume": null,"query": ""Good+Monday"","search_url": "https://x.com/search?q=%22Good+Monday%22&src=trend_click","promoted": false},, // 7 keys"rank": 2,"name": "#MoonshadowSeries","is_hashtag": true,"tweet_volume": null,"query": "#MoonshadowSeries","search_url": "https://x.com/search?q=%23MoonshadowSeries&src=trend_click","promoted": false},// 7 keys"rank": 3,"name": "#LaCasaDeLosFamososMx","is_hashtag": true,"tweet_volume": null,"query": "#LaCasaDeLosFamososMx","search_url": "https://x.com/search?q=%23LaCasaDeLosFamososMx&src=trend_click","promoted": false}]}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Live and recorded Spaces metadata.
A Space's metadata: title, host, state, listener counts, and whether audio is downloadable.
https://readx.sh/api/spaces/1vOxwrneqBqJB// 2 keys"code": 0,"data": // 13 keys"space_id": "1vOxwrneqBqJB","title": "The @BorderlandsFilm cast is live with @Fandango at SDCC!","state": "Ended","host_username": "Movies","host_name": "Movies","started_at": "2024-07-26T23:31:16.881Z","ended_at": "2024-07-27T00:09:14.898Z","is_live": false,"is_replay_available": true,"total_live_listeners": 465,"total_replay_watched": 59649,"stream_type": "replay","downloadable": true}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Live broadcasts and replays.
A broadcast: title, state, watch count, replay m3u8.
https://readx.sh/api/broadcasts/1DxLddLmlEvxm// 2 keys"code": 0,"data": // 12 keys"id": "1DxLddLmlEvxm","title": "Q2 2026 Earnings Call","state": "ENDED","thumb": "https://prod-fastly-us-west-1.video.pscp.tv/Transcoding/v1/replay_thumbnail/...(truncated)","mediaKey": "28_2079957437495586816","m3u8Url": "https://prod-fastly-us-west-1.video.pscp.tv/Transcoding/v1/hls/...(truncated)","totalWatched": 567422,"startTime": 1784755795,"endTime": 1784759796,"replayStart": 0,"availableForReplay": true,"user": // 18 keys"id": "13298072","username": "Tesla","fullname": "Tesla","location": "","website": "https://www.tesla.com","bio": "Electric vehicles, giant batteries & solar, AI & robotics","userPic": "https://pbs.twimg.com/profile_images/1337607516008501250/6Ggc4S5n.png","banner": "https://pbs.twimg.com/profile_banners/13298072/1762567360","pinnedTweet": "0","following": 56,"followers": 24785631,"tweets": 10478,"likes": 8020,"media": 2015,"verifiedType": "Business","protected": false,"suspended": false,"joinDate": 1202605952}}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Long-form X articles.
An X article by its wrapper tweet id (public lookup).
https://readx.sh/api/articles/2039003879841362278// 2 keys"code": 0,"data": // 3 keys"status": "success","msg": "success","article": // 11 keys"id": "QXJ0aWNsZUVudGl0eToyMDM4OTk4NDgzNDQxNDc5Njgw","author": , // 21 keys"type": "user","userName": "jack","url": "https://x.com/jack","twitterUrl": "https://twitter.com/jack","id": "12","name": "jack","isVerified": false,"isBlueVerified": true,"verifiedType": null,"profilePicture": "https://pbs.twimg.com/profile_images/1661201415899951105/azNjKOSH_normal.jpg","coverPicture": "https://pbs.twimg.com/profile_banners/12/1742427520","description": "no state is the best state","location": "","followers": 10514918,"following": 3,"canDm": true,"createdAt": "Tue Mar 21 20:50:14 +0000 2006","favouritesCount": 39905,"statusesCount": 30783,"mediaCount": 2973,"pinnedTweetIds": // 1 item"1833951636005552366"]},"replyCount": 567,"likeCount": 11052,"quoteCount": 790,"viewCount": 6455395,"createdAt": "Tue Mar 31 15:36:22 +0000 2026","title": "From Hierarchy to Intelligence","preview_text": "At Sequoia, we see that speed is the best predictor of start-up success. (truncated)","cover_media_img_url": "https://pbs.twimg.com/media/HEv7_K5WIAEcknc.jpg","contents": // 1 item// 2 keys"type": "unstyled","text": "At Sequoia, we see that speed is the best predictor of start-up success. ...(truncated, 40+ paragraphs total)"}]}}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Utility lookups for resolving between @handles and numeric user ids.
Resolve an @handle to its numeric user id.
https://readx.sh/api/tools/get_user_id?username=jack// 2 keys"code": 0,"data": // 1 key"id": "12"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Resolve up to 20 @handles to numeric user ids. Returns a map of handle → id; failed lookups are null.
https://readx.sh/api/tools/get_user_ids?usernames=jack%2Celonmusk// 2 keys"code": 0,"data": // 3 keys"jack": "12","elonmusk": "44196397","thisuserdoesnotexistzzz": null}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Resolve a numeric user id to its current @username.
https://readx.sh/api/tools/get_username?user_id=12// 2 keys"code": 0,"data": // 1 key"username": "jack"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
Resolve up to 20 numeric user ids to @usernames. Returns a map of id → username; failed lookups are null.
https://readx.sh/api/tools/get_usernames?user_ids=12%2C44196397// 2 keys"code": 0,"data": // 3 keys"0": null,"12": "jack","44196397": "elonmusk"}}
Paid endpoints return 402 Payment Required with an x402 challenge in the PAYMENT-REQUIRED header until a $0.01 USDC payment is attached — an x402 client or agent pays and retries automatically. Opening in a browser shows the raw 402.
x402 turns the dormant HTTP 402 status into a real payment rail. No accounts, no invoices — your client pays for exactly what it calls.
Call any endpoint. Costly ones reply 402 with an x402 payment challenge in the PAYMENT-REQUIRED header.
Your client signs a $0.01 USDC payment on Base or Solana and retries via the X-PAYMENT header.
The facilitator settles on-chain and the API returns your JSON — no keys, no accounts.