scraper-api-com Twitter API
Twitter: read-only. 3 public endpoints, no account needed.
Twitter: read-only. 3 public endpoints, no account needed.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/scraper-api-com:scraper-api-com-twitter-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: scraper-api.com Twitter API
version: 0.1.0
description: 'Self-hosted social media scraping API — a drop-in replacement for scrapecreators.com.
## Authentication
Every request must send your API key in the `x-api-key` header.
## Credits
Billing is credit-based: **1 request = 1 credit** (some endpoints cost more — see each endpoint''s description). Credits are **non-expiring** — buy once, use whenever.
Response bodies match the ScrapeCreators shapes so existing integrations work unchanged.'
contact:
name: Fabian Bitter
email: fabian@bitter.de
servers:
- url: https://api.scraper-api.com
description: Production
security:
- apiKeyAuth: []
tags:
- name: Twitter
description: 'Twitter: read-only. 3 public endpoints, no account needed.'
paths:
/v1/twitter/profile:
get:
tags:
- Twitter
summary: Get an X/Twitter user's profile (stats, verification, metadata) by handle
operationId: twitter_v1_profile
description: '**Live endpoint.** Credit cost: **1** (1 request = 1 credit).'
security:
- apiKeyAuth: []
parameters:
- name: handle
in: query
required: false
schema:
type: string
responses:
'200':
description: Platform-native JSON payload (ScrapeCreators-compatible).
content:
application/json:
example:
__typename: User
id: VXNlcjoxNTc3MjQxNDAz
rest_id: '1577241403'
is_blue_verified: true
core:
created_at: Mon Jul 08 09:31:59 +0000 2013
name: levelsio
screen_name: levelsio
avatar:
image_url: https://pbs.twimg.com/profile_images/mock/levelsio_normal.jpg
location:
location: 🌍 Nomad
verification_info:
is_identity_verified: false
highlights_info:
can_highlight_tweets: true
highlighted_tweets: '0'
creator_subscriptions_count: 0
tipjar_settings: {}
legacy:
followers_count: 914845
friends_count: 1784
favourites_count: 88231
statuses_count: 66120
listed_count: 11040
media_count: 9821
description: 📸 building AI startups in public
name: levelsio
screen_name: levelsio
location: 🌍 Nomad
created_at: Mon Jul 08 09:31:59 +0000 2013
profile_image_url_https: https://pbs.twimg.com/profile_images/mock/levelsio_normal.jpg
profile_banner_url: https://pbs.twimg.com/profile_banners/1577241403/mock
url: https://t.co/mocklink
verified: false
'400':
description: Missing or invalid parameters.
content:
application/json:
example:
error:
message: 'Missing required parameter(s): handle'
'401':
description: Missing or invalid API key.
content:
application/json:
example:
error:
message: Invalid API key.
'402':
description: Not enough credits.
content:
application/json:
example:
error:
message: Insufficient credits.
'429':
description: Rate limit exceeded.
content:
application/json:
example:
error:
message: Rate limit exceeded.
'502':
description: Upstream scrape failed.
content:
application/json:
example:
error:
message: Upstream scrape failed.
/v1/twitter/user-tweets:
get:
tags:
- Twitter
summary: Get an X/Twitter user's tweets by handle.
operationId: twitter_v1_user_tweets
description: '**Live endpoint.** Credit cost: **1** (1 request = 1 credit).'
security:
- apiKeyAuth: []
parameters:
- name: handle
in: query
required: false
schema:
type: string
responses:
'200':
description: Platform-native JSON payload (ScrapeCreators-compatible).
content:
application/json:
example:
tweets:
- __typename: Tweet
rest_id: '20'
core:
user_results:
result:
__typename: User
rest_id: '12'
is_blue_verified: true
core:
name: jack
screen_name: jack
legacy:
name: jack
screen_name: jack
followers_count: 6600000
edit_control:
edit_tweet_ids:
- '20'
is_edit_eligible: false
edits_remaining: '5'
is_translatable: false
views:
count: '1234567'
state: EnabledWithCount
source: <a href="https://twitter.com" rel="nofollow">Twitter Web Client</a>
legacy:
bookmark_count: 12
created_at: Tue Mar 21 20:50:14 +0000 2006
conversation_id_str: '20'
full_text: just setting up my twttr
favorite_count: 307712
reply_count: 190000
retweet_count: 130000
quote_count: 8000
lang: en
is_quote_status: false
id_str: '20'
user_id_str: '12'
entities:
hashtags: []
symbols: []
urls: []
user_mentions: []
url: https://x.com/jack/status/20
next_cursor: null
'400':
description: Missing or invalid parameters.
content:
application/json:
example:
error:
message: 'Missing required parameter(s): handle'
'401':
description: Missing or invalid API key.
content:
application/json:
example:
error:
message: Invalid API key.
'402':
description: Not enough credits.
content:
application/json:
example:
error:
message: Insufficient credits.
'429':
description: Rate limit exceeded.
content:
application/json:
example:
error:
message: Rate limit exceeded.
'502':
description: Upstream scrape failed.
content:
application/json:
example:
error:
message: Upstream scrape failed.
/v1/twitter/tweet:
get:
tags:
- Twitter
summary: Get a single X/Twitter tweet (content + engagement + author) by URL
operationId: twitter_v1_tweet
description: '**Live endpoint.** Credit cost: **1** (1 request = 1 credit).'
security:
- apiKeyAuth: []
parameters:
- name: url
in: query
required: true
schema:
type: string
responses:
'200':
description: Platform-native JSON payload (ScrapeCreators-compatible).
content:
application/json:
example:
__typename: Tweet
rest_id: '20'
core:
user_results:
result:
__typename: User
rest_id: '12'
is_blue_verified: true
core:
name: jack
screen_name: jack
legacy:
name: jack
screen_name: jack
followers_count: 6600000
edit_control:
edit_tweet_ids:
- '20'
is_edit_eligible: false
edits_remaining: '5'
is_translatable: false
views:
count: '1234567'
state: EnabledWithCount
source: <a href="https://twitter.com" rel="nofollow">Twitter Web Client</a>
legacy:
bookmark_count: 12
created_at: Tue Mar 21 20:50:14 +0000 2006
conversation_id_str: '20'
full_text: just setting up my twttr
favorite_count: 307712
reply_count: 190000
retweet_count: 130000
quote_count: 8000
lang: en
is_quote_status: false
id_str: '20'
user_id_str: '12'
entities:
hashtags: []
symbols: []
urls: []
user_mentions: []
url: https://x.com/jack/status/20
'400':
description: Missing or invalid parameters.
content:
application/json:
example:
error:
message: 'Missing required parameter(s): handle'
'401':
description: Missing or invalid API key.
content:
application/json:
example:
error:
message: Invalid API key.
'402':
description: Not enough credits.
content:
application/json:
example:
error:
message: Insufficient credits.
'429':
description: Rate limit exceeded.
content:
application/json:
example:
error:
message: Rate limit exceeded.
'502':
description: Upstream scrape failed.
content:
application/json:
example:
error:
message: Upstream scrape failed.
components:
securitySchemes:
apiKeyAuth:
type: apiKey
in: header
name: x-api-key
description: Your scraper-api.com API key.
x-tagGroups:
- name: Platforms
tags:
- Instagram
- TikTok
- YouTube
- Facebook
- LinkedIn
- Twitter
- Spotify
- Apple Music
- Kleinanzeigen
- Quoka
- markt.de
- mobile.de
- '11880'
- Gelbe Seiten
- ImmobilienScout24
- immowelt
- WG-Gesucht
- Bayut
- LOVOO
- Jaumo
- Tinder
- Bumble
- Snapchat
- Google
- Arbeitsagentur
- Ausbildung.de
- meinestadt.de