X (Twitter) API alternative: tweets, timelines and search as JSON

You can read public X (Twitter) data with a few REST calls: a single tweet by URL, the recent tweets of a handle, or a keyword search. Each call returns JSON and is billed per successful request, so there is no monthly tier to buy before you know your volume.

Buy credits

Use cases

Endpoints and cost

EndpointWhat it returnsCredits/callUSD/call (starter plan)
/v1/twitter/tweetTweet Details1$0.0017
/v1/twitter/user_tweetsUser Tweets1$0.0017
/v1/twitter/search_postsSearch Posts1$0.0017

Endpoint details

/v1/twitter/tweet

Tweet Details 1,000 calls = 1,000 credits = $1.67 on the starter plan.

ParameterTypeRequiredDescription
urlstringyesTweet URL
trimbooleannoSet to true for a trimmed down version of the response
cache_max_agestringnoIf we have a response in the cache that is this many days old or newer, return the cached response (0 credits, with "cached": true and a "cached_at" timestamp).

Sample response (trimmed):

{
 "rest_id": "1935730646267158797",
 "views": {
  "count": "27539",
  "state": "EnabledWithCount"
 },
 "legacy": {
  "bookmark_count": 95,
  "bookmarked": false,
  "created_at": "Thu Jun 19 16:05:24 +0000 2025",
  "conversation_id_str": "1935730646267158797",
  "display_text_range": [
   0
  ],
  "entities": {
   "hashtags": [],
   "media": [
    {
     "display_url": "pic.x.com/YywdjQZde8",
     "expanded_url": "https://x.com/Austen/status/1935730646267158797/photo/1",
     "id_str": "1935730260303069184",
     "indices": [
      149
     ],
     "media_key": "3_1935730260303069184",
     "media_url_https": "https://pbs.twimg.com/media/Gt0YanJWwAA6B80.jpg",
     "type": "photo",
     "url": "https://t.co/YywdjQZde8",
     "ext_media_availability": {
      "status": "Available"
     },
     "allow_download_status": {
      "allow_download": true
     },
     "media_results": {
      "result": "{...}"
     }
    }
   ],
   "symbols": [],
   "timestamps": [],
   "urls": [],
   "user_mentions": []
  },
  "extended_entities": {
   "media": [
    {
     "display_url": "pic.x.com/YywdjQZde8",
     "expanded_url": "https://x.com/Austen/status/1935730646267158797/photo/1",
     "id_str": "1935730260303069184",
     "indices": [
      149
     ],
     "media_key": "3_1935730260303069184",
     "media_url_https": "https://pbs.twimg.com/media/Gt0YanJWwAA6B80.jpg",
     "type": "photo",
 

/v1/twitter/user_tweets

User Tweets 1,000 calls = 1,000 credits = $1.67 on the starter plan.

ParameterTypeRequiredDescription
handlestringyesTwitter handle
trimbooleannoSet to true for a trimmed down version of the response

/v1/twitter/search_posts

Search Posts 1,000 calls = 1,000 credits = $1.67 on the starter plan.

ParameterTypeRequiredDescription
querystringyesKeyword or phrase to search for in Google-indexed public X/Twitter posts
next_cursorstringnoPass the cursor returned by the previous response. Supported page cursors are 1 through 11. A null response cursor means there are no more pages.

Example: curl

curl -H "X-Scapi-Key: $SCAPI_KEY" "https://api.scrapall.bipsport.com/scapi/v1/twitter/tweet"

Example: Python

import os, requests
r = requests.get("https://api.scrapall.bipsport.com/scapi/v1/twitter/tweet",
    headers={"X-Scapi-Key": os.environ["SCAPI_KEY"]})
print(r.json())

FAQ

Can I collect public X data without the official API?

Yes. These endpoints return public tweets, timelines and search results with one API key header. You do not need an X developer account, an app review or a monthly tier.

Why not pay for the official X API?

Official tiers are billed per month whether you use them or not, and the lower tiers have tight read limits. Here you pay only for successful calls, see the cost table on this page.

Which fields come back?

The sample responses below are real payload shapes. Check them for the exact fields, such as text, author and engagement counts, before you build on a field.

How do I pay and get my API key?

Open the Buy page, pick the starter plan and pay in USDT on TRC20 or ERC20. The key is shown once, right after the payment is confirmed on-chain.

How many credits does one call use?

The cost table on this page lists credits per call for each endpoint. The starter plan is $45 for 27,000 credits per 30 days.

Get an API key and credits

Full reference: all twitter endpoints.