Skip to content
Skillv1.0.0

x-api

An X API alternative and Twitter API alternative on fetcher.sh — pay-per-call in USDC via x402, or prepaid credits with a Bearer key, no OAuth and no developer application. Use when the user wants to

by fetcher-sh(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from fetcher-sh/fetcher-skills (skills/x-api/SKILL.md) via skills.sh. Install upstream with npx skills add fetcher-sh/fetcher-skills --skill x-api. Copyright stays with the author.

X (Twitter) Data API

A drop-in X data source for agents: search posts, resolve profiles, pull timelines and followers, read Lists, and check trends — all as one plain HTTP GET, paid per call. No developer account, no app review, no OAuth handshake, and no waiting on X's own API tiers or rate-limit approvals. If your task mentions an X search query, a handle, a post/tweet ID, or a list ID, this is the skill.

Base URL: https://twitter.fetcher.sh — the API host is still named twitter (it predates the rebrand and matches what agents already search for); everything below is current X data.

Also published as twitter-api — identical endpoints, indexed under the "Twitter" name too since both are still in everyday use.

Quick reference

Base URL https://twitter.fetcher.sh
Auth Authorization: Bearer bby_live_... or x402 (USDC)
Price $0.002–$0.005/call
Endpoints 15, all GET
MCP https://twitter.fetcher.sh/mcp
Machine-readable /openapi.json · /llms.txt · /skill.md

Which endpoint do I need?

I want to... Call
Search posts by keyword or operator (from:, since:, min_faves:, ...) GET /api/search
Search accounts by name GET /api/search/users
Look up a profile by @handle GET /api/handle/{handle}
Get a user's followers or followings GET /api/user/{id}/followers or /followings
Get a single post by ID GET /api/tweet/{id}
See who reposted a post GET /api/tweet/{id}/retweeters
Read an X List's posts or members GET /api/list/{id}/tweets or /members
Check trending topics for a country GET /api/trends

Full param details for every row: references/endpoints.md.

Authentication

Two ways to pay, same data — full mechanics in the fetcher skill:

# 1. Prepaid credits (recommended — get a key at https://fetcher.sh/topup
#    or via POST /api/credits/topup, see the fetcher skill)
export FETCHER_API_KEY="bby_live_xxxxxxxxxxxx"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/search?query=hello"

# 2. x402 pay-per-call — omit the header; a GET with no payment returns 402
#    with machine-readable payment requirements (USDC on Base, Polygon,
#    Arbitrum, Monad, or Solana). @x402/fetch signs and retries automatically.

Every response is { "status": number, "message": string, "data": ... }; the HTTP status mirrors status.

Endpoints (15 — all GET, $0.005/call unless noted)

Endpoint Price What it returns
/api/search $0.005 Posts matching a query; supports X's advanced search operators
/api/search/users $0.005 Accounts matching a name/keyword query
/api/handle/{handle} $0.005 Profile by @handle
/api/handle/{handle}/about $0.005 Extended profile/about info by @handle
/api/user/{id} $0.005 Profile by numeric user ID
/api/user/{id}/tweets $0.005 A user's post timeline
/api/user/{id}/replies $0.005 A user's replies
/api/user/{id}/followers $0.005 A user's followers
/api/user/{id}/followings $0.005 Accounts a user follows
/api/tweet/{id} $0.002 A single post by ID
/api/tweet/{id}/replies $0.005 Replies to a post
/api/tweet/{id}/retweeters $0.005 Accounts that reposted a post
/api/list/{id}/members $0.005 An X List's member accounts
/api/list/{id}/tweets $0.005 An X List's post feed
/api/trends $0.005 Trending topics for a country

{id} / {handle} are path parameters — substitute the real value. Optional query params (cursor, sort) paginate or reorder; only query (search) and country (trends) are required elsewhere they appear.

Scenarios

The query on /api/search goes straight to X's own search, so its operators work as-is: from:, to:, since:, until:, min_faves:, min_retweets:, filter:, -filter:.

Everything from one account:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/search?query=from%3AOpenAI&sort=Latest"

Between two dates:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=x402 since:2026-01-01 until:2026-02-01" -G \
  "https://twitter.fetcher.sh/api/search"

Popular posts only, replies excluded:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=ai agents min_faves:500 -filter:replies" -G \
  --data-urlencode "sort=Top" \
  "https://twitter.fetcher.sh/api/search"

Search accounts by name:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=climate scientist" -G \
  "https://twitter.fetcher.sh/api/search/users"

Resolve a profile by handle, then pull its bio/about:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/handle/nasa"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/handle/nasa/about"

A user's posts, replies, followers, or followings (by numeric ID from the handle lookup above):

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/user/11348282/tweets"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/user/11348282/followers"

A single post, its replies, and who reposted it:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/tweet/1234567890123456789"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/tweet/1234567890123456789/replies"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/tweet/1234567890123456789/retweeters"

An X List's members and posts:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/list/1234567890/members"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/list/1234567890/tweets"

Trending topics for a country:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://twitter.fetcher.sh/api/trends?country=United%20States"

MCP

{
  "mcpServers": {
    "x": {
      "url": "https://twitter.fetcher.sh/mcp",
      "headers": { "Authorization": "Bearer bby_live_..." }
    }
  }
}

Free: search_endpoints, describe_endpoint, check_balance. Paid: fetch_data (any endpoint above), topup_credits, plus the named shortcut twitter_search. Drop the headers block to pay per call with x402 instead — see the fetcher skill for the full flow.

Errors

  • 400 — missing/invalid parameter (message names it)
  • 401 — unknown or rotated key
  • 402 — payment required (x402 challenge) or topup_required (credits exhausted)
  • 404 — not a priced path
  • No rate limits; no refunds on upstream failures (settlement precedes delivery)

Reference

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/fetcher-sh-fetcher-skills-x-api/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

fetcher-sh-fetcher-skills-x-api.ocm.jsonjson
{
  "ocm": "1",
  "id": "fetcher-sh-fetcher-skills-x-api",
  "kind": "skill",
  "name": "x-api",
  "description": "An X API alternative and Twitter API alternative on fetcher.sh — pay-per-call in USDC via x402, or prepaid credits with a Bearer key, no OAuth and no developer application. Use when the user wants to search X posts by keyword, hashtag, or advanced operators (from:, to:, since:, until:, min_faves:, filter:), scrape an X/Twitter profile by handle, pull a user's posts, replies, followers, or followings, fetch a single post with its replies or reposters, read an X List's members or posts, check trending topics by country, or search for X accounts by name. Also covers building an X data pipeline, social listening, competitor monitoring, hashtag tracking, or follower export without the official X API's pricing tiers or app-review process.",
  "publisher": "fetcher-sh",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "coding"
    ],
    "tags": [
      "skill-md",
      "x",
      "twitter",
      "x-api",
      "twitter-api",
      "x-api-alternative",
      "twitter-api-alternative",
      "x-data-api",
      "social-media",
      "social-listening"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "An X API alternative and Twitter API alternative on fetcher.sh — pay-per-call in USDC via x402, or prepaid credits with a Bearer key, no OAuth and no developer application. Use when the user wants to search X posts by keyword, hashtag, or advanced operators (from:, to:, since:, until:, min_faves:, filter:), scrape an X/Twitter profile by handle, pull a user's posts, replies, followers, or followings, fetch a single post with its replies or reposters, read an X List's members or posts, check trending topics by country, or search for X accounts by name. Also covers building an X data pipeline, social listening, competitor monitoring, hashtag tracking, or follower export without the official X API's pricing tiers or app-review process."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/fetcher-sh/fetcher-skills",
      "path": "skills/x-api/SKILL.md",
      "ref": "HEAD",
      "url": "https://www.skills.sh/fetcher-sh/fetcher-skills/x-api",
      "key": "fetcher-sh/fetcher-skills/skills/x-api/SKILL.md"
    }
  },
  "instructions": "# X (Twitter) Data API\n\nA drop-in X data source for agents: search posts, resolve profiles, pull\ntimelines and followers, read Lists, and check trends — all as one plain HTTP\nGET, paid per call. No developer account, no app review, no OAuth handshake,\nand no waiting on X's own API tiers or rate-limit approvals. If your task\nmentions an X search query, a handle, a post/tweet ID, or a list ID, this is\nthe skill.\n\nBase URL: `https://twitter.fetcher.sh` — the API host is still named\n`twitter` (it predates the rebrand and matches what agents already search\nfor); everything below is current X data.\n",
  "cost": {
    "context_tokens": 1981
  }
}

Fetch it by URL: GET /api/v1/registry/fetcher-sh-fetcher-skills-x-api/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.