Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
100
💰 Paid API data A2A 0.3.0 v1.0.0

readx.sh

readx.sh · readx.sh

Public X/Twitter data as read-only JSON: profiles, timelines, single tweets and conversations, search, hashtags, lists, followers and following. Paid per single call via x402, $0.01 in USDC on Base or Solana, with no API key or registration.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain readx.sh via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent. Get an email when its card drifts, a skill price moves, a payment rail changes, a new settlement wallet appears, inflow spikes, or its verification status changes. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
48/100
grade D · 9 criteria
Uptime
90.7%
43 probes
~997 ms response
Observed inflow · 30d
$7.31
731 tx · on-chain
Usage · 7d
0
no recent activity
Card drift · 7d
changed
2 snapshots tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

D
Conformance score: 48/100
D-grade: significant issues, auth-gated, partially broken, or stale.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
info Live JSON-RPC 0/25
Live probe hasn't run yet.
partial Protocol version 5/10
Declares pre-1.0 A2A 0.3.0 (Google preview). Upgrade to v1.x for full points.
How to earn +5 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to every entry in `supportedInterfaces[]`. A2A v1.0 removed the AgentCard root field.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
partial Uptime track record 14/15
39/43 probes succeeded (91% uptime).
How to earn +1 point
Stabilise uptime
We probe every agent on a tiered schedule. Sustained 99 %+ uptime over 20+ checks scores full points. Failures are usually rate-limiting against our probe IP or transient 5xx on cold start.
Docs →
pass Skill declaration 10/10
Declares 13 skills with structured metadata.
partial Verified Identity 5/10
Provider declared: readx.sh (https://readx.sh). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 0d
info Security declaration 0/5
Neither securitySchemes nor securityRequirements declared — how to authenticate is unstated.
⚠ Card drift detected. This agent's agent-card.json changed within the last 7 days. We track these so downstream callers can react.

Activity (audit trail)

last 24h · 0 calls Public aggregate · no PII recorded

No calls observed in the last 7 days. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

2 snapshots drifted 1× Every change to agent-card.json
Captured Hash
2026-07-28 01:46:25 current b53f180f95ba… view →
2026-07-23 12:20:06 262f7aab4690… view →
Uptime
90.7%
43 probes
Response
53ms
last probe
Skills
13
declared
Streaming
SSE-capable

Endpoints

Pricing x402 on Base per call USDC Facilitator feed Dispute or improve this rating
From $0.0100 per call
Endpoint Price Currency
https://readx.sh/api/:name 0.01 USDC
https://readx.sh/api/:name/about 0.01 USDC
https://readx.sh/api/:name/affiliates 0.01 USDC
https://readx.sh/api/:name/follower_web 0.01 USDC
https://readx.sh/api/:name/followers 0.01 USDC
https://readx.sh/api/:name/followers_web 0.01 USDC
https://readx.sh/api/:name/following 0.01 USDC
https://readx.sh/api/:name/following_web 0.01 USDC
https://readx.sh/api/:name/info 0.01 USDC
https://readx.sh/api/:name/mentions 0.01 USDC
https://readx.sh/api/:name/pinned 0.01 USDC
https://readx.sh/api/:name/profile 0.01 USDC
https://readx.sh/api/:name/status/:id 0.05 USDC
https://readx.sh/api/:name/tweets/:id 0.01 USDC
https://readx.sh/api/:name/tweets/:id/history 0.01 USDC
https://readx.sh/api/:name/verified_followers 0.01 USDC
https://readx.sh/api/:name/with_media 0.01 USDC
https://readx.sh/api/:name/with_replies 0.01 USDC
https://readx.sh/api/a2a/v1/message:send 0.01 USDC
https://readx.sh/api/articles/:id 0.01 USDC
https://readx.sh/api/broadcasts/:id 0.01 USDC
https://readx.sh/api/hashtag/:hash 0.01 USDC
https://readx.sh/api/lists/:id 0.01 USDC
https://readx.sh/api/lists/:id/members 0.01 USDC
https://readx.sh/api/lists/:id/timeline 0.01 USDC
https://readx.sh/api/search 0.01 USDC
https://readx.sh/api/search/tweets 0.01 USDC
https://readx.sh/api/search/users 0.01 USDC
https://readx.sh/api/status/:id 0.05 USDC
https://readx.sh/api/tools/get_user_id 0.01 USDC
https://readx.sh/api/tools/get_user_ids 0.01 USDC
https://readx.sh/api/tools/get_username 0.01 USDC
https://readx.sh/api/tools/get_usernames 0.01 USDC
https://readx.sh/api/trends 0.01 USDC
https://readx.sh/api/tweets/:id 0.01 USDC
https://readx.sh/api/tweets/:id/replies 0.01 USDC
https://readx.sh/api/tweets/:id/retweeters 0.01 USDC
Try it ↗ Opens the operator's playground / docs in a new tab.
Settlement wallet: 0x13e060adcc6f4b731da8382b333027b8b2bff707 · basescan ↗
Observed on-chain inflow verified on-chain
Last 7d
$7.31
731 calls
Last 30d
$7.31
731 calls
USDC inflows on Base. Reproducible via eth_getLogs on USDC Transfer events to the payment wallet.
Daily 30-day observed-inflow history ~ flat (+0.0%)
2026-08-01 2026-08-10
Peak day: $7.31 Data points: 10 Total tx (30d window): 731
Payment authenticity evidence confidence How we measure this →
insufficient_evidence_of_independent_payers 1/5

Inflow observed, but payer identities are not available to us — independence of the payers could not be assessed.

Assessed window
30d
6 active of 7 observed
Inflow assessed
$7.31
731 transactions
Payer identities
not held
2 evidence caveats
shared_settlement_wallet — The settlement wallet is shared with other indexed agents, so inflow cannot be attributed to this agent alone.
Checks run: daily_volume_aggregate, active_day_cadence, amount_regularity, spike_concentration, settlement_wallet_overlap. Derived from agent_revenue_daily, agents.payment_wallet. Measured 2026-08-10.
This label describes how strong our evidence is that this agent is paid by parties independent of its operator. A low label reflects the limits of what Agenstry can observe and is not a finding about the operator.
Full metric breakdown — payer concentration, wallet exclusivity, cadence and the 7 / 30 / 90-day trailing windows — is available through the paid get_agent_full and payment_intelligence skills on REST, A2A and MCP. API docs →
Agent cardhttps://readx.sh/.well-known/agent-card.json
Providerhttps://readx.sh
Docshttps://readx.sh/skill.md
Discovered via
agentic_market recrawl_hot recrawl_warm cdp_discovery

Skills · 13 declared · mapped to canonical taxonomy

User Profile Lookup

Look up an X user's profile: bio, follower/following counts, verification status, pinned tweet, and join date.

canonical Resume Screening match 83%
profileuserbio
User Profile Info

Look up an X user's profile info: id, name, bio, location, follower/following counts, and verification status.

canonical Agent Profiles match 84%
profileuserbio
Followers, Following & Mentions

Export a user's followers, following, web-view followers/following, verified-followers, mentions, media, or affiliates.

canonical Web Scraping and Extraction match 85%
followersfollowingsocial-graphmentionsmedia
User Timeline

Fetch a user's tweets, replies, or media-only timeline, paginated.

canonical Web Scraping and Extraction match 85%
timelinetweets
Tweet & Conversation Lookup

Read a single tweet, its full conversation (replies), its edit history, or who retweeted it.

canonical Parts and Components Lookup match 84%
tweetconversationreplies
Tweet & User Search

Search tweets or users by keyword.

canonical Flight Search and Booking match 86%
search
Hashtag Resolution

Resolve a hashtag to its tweet search results.

canonical Negotiation Resolution match 85%
hashtagsearch
X List Members

Read the members of an X List by its numeric id.

canonical Id match 85%
lists
Trending Topics

Get trending topics for a location — worldwide by default, or filter by country name/ISO code or WOEID.

canonical Weather Forecast and Alerts match 87%
trendstrending
X Articles

Read a long-form X article by its wrapper tweet id (public), or by entity id with an auth token (owner-only).

canonical Long-Form Writing match 84%
articleslong-form
Handle / User ID Resolution

Resolve an @handle to its numeric user id, or a numeric user id back to a username.

canonical Negotiation Resolution match 84%
utilityresolver
Space Info

Fetch metadata for an X Space by id — title, host, state, listener counts, and whether audio is downloadable.

canonical Audio Transcription match 83%
spacesbroadcast
Broadcasts

Read metadata for an X broadcast (live audio/video) by id.

canonical Audio Transcription match 86%
broadcast

Health · last 3 probes

When HTTP Live JSON-RPC Latency
2026-07-28 01:46:08 200 53ms
2026-07-23 12:19:42 200 43ms
2026-07-20 04:37:35 404

Cheaper or better alternatives per-skill

↓ 9 skills cheaper elsewhere peak save 90.0%

For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.

Similar agents embedding-nearest

x402.twit.sh
Paid API for X/Twitter data: tweet search, user profiles, followers, lists and communities returned as X v2 compatible JSON, plus write endp
x402.twit.sh · q 100%
x402stock.xyz
Pay-per-call market and economic data API for agents: US stocks, ETFs and options, macro series, SEC filings, crypto and market sentiment. P
x402stock.xyz · q 100%
api.x402node.dev
Pay-per-call API with more than 500 endpoints on a single host: exchange rates, crypto and stock prices, on-chain and DeFi data, commodities
api.x402node.dev · q 100%
xmedia.use.x402atlas.com
Resolves a public X (Twitter) post URL into direct CDN media links: mp4 video URLs with thumbnails plus every image in the post. Returns lin
xmedia.use.x402atlas.com · q 100%
twitr.sh
Fetch a user's X/Twitter timeline — their tweets, replies, likes, media posts, or mentions — plus follower and following lists, and per-twee
twitr.sh · q 65%
dns.use.x402atlas.com
Pay-per-call DNS and domain lookup API with six endpoints: A, TXT and MX records, WHOIS text, parsed RDAP registration data and DNSSEC statu
dns.use.x402atlas.com · q 100%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime A2A protocol version
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/readx.sh.svg)](https://agenstry.com/agents/readx.sh)
[![Verified Business](https://agenstry.com/badge/readx.sh/identity.svg)](https://agenstry.com/agents/readx.sh)
[![Uptime](https://agenstry.com/badge/readx.sh/uptime.svg)](https://agenstry.com/agents/readx.sh)
[![A2A version](https://agenstry.com/badge/readx.sh/protocol.svg)](https://agenstry.com/agents/readx.sh)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "_source": "agentic.market",
  "service": {
    "id": "readx-sh",
    "name": "readx.sh",
    "description": "",
    "domain": "readx.sh",
    "provider": "readx.sh",
    "providerUrl": "",
    "category": "",
    "networks": [
      "Base",
      "solana:5eykt4usfv8p8njdtrepy1vzqkqzkvdp"
    ],
    "enriched": false,
    "endpoints": [
      {
        "url": "https://readx.sh/api/:name",
        "description": "A user's timeline: tweets, retweets and quotes. Example: GET /api/jack",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "13",
          "l30DaysUniquePayers": "3"
        }
      },
      {
        "url": "https://readx.sh/api/:name/about",
        "description": "Account info: join date, base location, verification, username changes. Example: GET /api/jack/about",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "shafu0x",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "10",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/affiliates",
        "description": "Accounts affiliated with a user (e.g. an organization's members). Example: GET /api/jack/affiliates",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "OpenAI",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "6",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/follower_web",
        "description": "A user's followers as shown on the web (~70 per page, capped at ~800; paginate with cursor until has_more is false). Example: GET /api/jack/follower_web",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "1",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/:name/followers",
        "description": "A user's followers (~200 per page; paginate with cursor until has_more is false). Example: GET /api/jack/followers",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "shafu0x",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "42",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/followers_web",
        "description": "A user's followers as shown on the web (~70 per page, capped at ~800; paginate with cursor until has_more is false). Example: GET /api/jack/followers_web",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "shafu0x",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "42",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/:name/following",
        "description": "Accounts a user follows (~200 per page; paginate with cursor until has_more is false). Example: GET /api/jack/following",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "shafu0x",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "25",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/following_web",
        "description": "Accounts a user follows as shown on the web (~70 per page, capped at ~800; paginate with cursor until has_more is false). Example: GET /api/jack/following_web",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "BobbyThakkar",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "17",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/info",
        "description": "A user's profile info: id, name, bio, location, follower/following counts, verification. Example: GET /api/jack/info",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "suji_yan",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "332",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/mentions",
        "description": "Tweets that mention a user (paginate with cursor until has_more is false). Example: GET /api/jack/mentions",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "4",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/:name/pinned",
        "description": "Just the user's pinned tweet, if any. Example: GET /api/jack/pinned",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "5",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/:name/profile",
        "description": "Full profile: bio, counts, banner, pinned tweet and a photo rail. Example: GET /api/jack/profile",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "8",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/status/:id",
        "description": "A single tweet with its full conversation: tweets before, after and replies. Example: GET /api/jack/status/20",
        "pricing": {
          "amount": "0.05",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "2069075596726981010",
            "enumValues": [],
            "default": null,
            "required": false
          },
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "nexocooker",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": null
      },
      {
        "url": "https://readx.sh/api/:name/tweets/:id",
        "description": "A single tweet with its full conversation: tweets before, after and replies. Example: GET /api/jack/tweets/20",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "2081768022025658672",
            "enumValues": [],
            "default": null,
            "required": false
          },
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "NathanFlurry",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "12",
          "l30DaysUniquePayers": "6"
        }
      },
      {
        "url": "https://readx.sh/api/:name/tweets/:id/history",
        "description": "A tweet's edit history: the latest version plus every prior revision. Example: GET /api/jack/tweets/20/history",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "20",
            "enumValues": [],
            "default": null,
            "required": false
          },
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "5",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/:name/verified_followers",
        "description": "A user's verified followers (~200 per page; paginate with cursor until has_more is false). Example: GET /api/jack/verified_followers",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "shafu0x",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "12",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/:name/with_media",
        "description": "A user's timeline filtered to tweets with media. Example: GET /api/jack/with_media",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "5",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/:name/with_replies",
        "description": "A user's timeline including their replies. Example: GET /api/jack/with_replies",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "name",
            "type": "string",
            "description": "",
            "example": "jack",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "4",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/a2a/v1/message:send",
        "description": "A2A task invocation \u2014 send a skill id + input, get back a completed Task with the result. Example: GET /api/a2a/v1/message:send",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "POST",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "send",
            "type": "string",
            "description": "",
            "example": ":send",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "2",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/articles/:id",
        "description": "An X article (long-form post) by its wrapper tweet id (public). Example: GET /api/articles/1",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "2081768022025658672",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "5",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/broadcasts/:id",
        "description": "A Spaces / broadcast: title, state, watch count, replay m3u8. Example: GET /api/broadcasts/1",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "1DxLddLmlEvxm",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "3",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/hashtag/:hash",
        "description": "Tweet search for a hashtag. Same as `/api/search?q=%23tag`. Example: GET /api/hashtag/typescript",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "hash",
            "type": "string",
            "description": "",
            "example": "typescript",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "4",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/lists/:id",
        "description": "A list's metadata (name, owner, description, member count). Example: GET /api/lists/1",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "1615020992349034496",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "11",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/lists/:id/members",
        "description": "The users that belong to a list (paginate with cursor until has_more is false). Example: GET /api/lists/84839422/members",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "84839422",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "3",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/lists/:id/timeline",
        "description": "The combined timeline of every account in a list. Example: GET /api/lists/1/timeline",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "1615020992349034496",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "3",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/search",
        "description": "Search tweets. Start the query with @ (or add f:user) to search users instead. Example: GET /api/search?q=typescript",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "11",
          "l30DaysUniquePayers": "5"
        }
      },
      {
        "url": "https://readx.sh/api/search/tweets",
        "description": "Search for tweets by query (optional product filter; paginate with cursor). Example: GET /api/search/tweets?q=typescript",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "69",
          "l30DaysUniquePayers": "6"
        }
      },
      {
        "url": "https://readx.sh/api/search/users",
        "description": "Search for users by query (paginate with cursor until has_more is false). Example: GET /api/search/users?q=jack",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "123",
          "l30DaysUniquePayers": "3"
        }
      },
      {
        "url": "https://readx.sh/api/status/:id",
        "description": "A single tweet on its own, without the surrounding conversation. Example: GET /api/status/20",
        "pricing": {
          "amount": "0.05",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "2067953168630366534",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": null
      },
      {
        "url": "https://readx.sh/api/tools/get_user_id",
        "description": "Resolve an @handle to its numeric user id. Example: GET /api/tools/get_user_id?username=jack",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "5",
          "l30DaysUniquePayers": "2"
        }
      },
      {
        "url": "https://readx.sh/api/tools/get_user_ids",
        "description": "Resolve up to 20 @handles to numeric user ids (map; null on per-handle failure). Example: GET /api/tools/get_user_ids?usernames=jack,elonmusk",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "1",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/tools/get_username",
        "description": "Resolve a numeric user id to its current @username. Example: GET /api/tools/get_username?user_id=12",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "4",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/tools/get_usernames",
        "description": "Resolve up to 20 numeric user ids to @usernames (map; null on per-id failure). Example: GET /api/tools/get_usernames?user_ids=12,44196397",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "1",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/trends",
        "description": "Trending topics for a location (worldwide by default; filter with country or woeid). Example: GET /api/trends?country=US",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "2",
          "l30DaysUniquePayers": "1"
        }
      },
      {
        "url": "https://readx.sh/api/tweets/:id",
        "description": "A single tweet on its own, without the surrounding conversation. Example: GET /api/tweets/20",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "20",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "7",
          "l30DaysUniquePayers": "3"
        }
      },
      {
        "url": "https://readx.sh/api/tweets/:id/replies",
        "description": "Replies to a tweet (paginate with cursor until has_more is false). Example: GET /api/tweets/20/replies",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "20",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "426",
          "l30DaysUniquePayers": "3"
        }
      },
      {
        "url": "https://readx.sh/api/tweets/:id/retweeters",
        "description": "Accounts that retweeted a tweet (paginate with cursor until has_more is false). Example: GET /api/tweets/20/retweeters",
        "pricing": {
          "amount": "0.01",
          "currency": "USDC",
          "network": "eip155:8453",
          "scheme": "exact",
          "maxAmount": "",
          "minAmount": ""
        },
        "method": "GET",
        "providerName": "",
        "parameters": [
          {
            "group": "path",
            "name": "id",
            "type": "string",
            "description": "",
            "example": "20",
            "enumValues": [],
            "default": null,
            "required": false
          }
        ],
        "serviceName": "ReadX",
        "tags": [
          "twitter",
          "x",
          "social",
          "data",
          "api"
        ],
        "quality": {
          "l30DaysTotalCalls": "6",
          "l30DaysUniquePayers": "1"
        }
      }
    ],
    "integrationType": "",
    "isNew": false,
    "priceSummary": {
      "minAmount": "0.01",
      "maxAmount": "0.05",
      "avgCostPerTransaction": "0.012162",
      "avgCostBasis": "exact",
      "currency": "USDC"
    },
    "serviceName": "ReadX",
    "tags": [
      "twitter",
      "x",
      "social",
      "data",
      "api"
    ],
    "iconUrl": ""
  }
}