X Account Signals
X Account Signals API
A pay-per-use API powered by x402. Enter any X/Twitter handle to get account signals — tweet activity patterns, account location, verification status, affiliate, client, and username change history — starting at $1.50 USDC per lookup.
How it works
Plain-English x402 flow
Call the endpoint
Your app requests the account-signals URL. If payment is required, the server returns 402 Payment Required.
Sign payment auth
Your wallet signs a USDC transfer authorization. No gas is needed because this uses EIP-3009.
Retry with payment
The request is retried with the x402 payment header. If it validates, the API returns the account signals.
Settle on Base
The USDC payment settles on Base mainnet, so the lookup is paid per use without accounts or API keys.
API docs
Endpoint and response
https://xsignal.mykclawd.xyz/x-account-signals?handle={twitter_handle}&maxTweets={100|200|...|1000}- Cost
- $1.50 USDC per 100 tweets · default $3.00 (200 tweets) · max $15.00 (1000 tweets)
- Facilitator
- https://api.cdp.coinbase.com/platform/v2/x402/facilitator
PassmaxTweetsin multiples of 100 (100–1000) to control how many tweets are fetched and how much you pay. Omit it to use the default of 200. IfwindowCapped: truethe account has more activity beyond what was fetched. Non-fatal errors (e.g. scraper unavailable) are returned in theerrorsarray alongside a 200 response. If the X API itself fails, the server returns a 5xx and no payment is settled.
{
"handle": "string",
"userId": "string",
"createdAt": "ISO date",
"errors": ["string"],
"signals": {
"activityByMonth": { "YYYY-MM": number },
"tweetCount": number,
"windowStart": "ISO date | null",
"windowEnd": "ISO date | null",
"windowCapped": boolean,
"windowCapNote": "string | null",
"about": {
"accountBasedIn": "string | null",
"connectedVia": "string | null",
"isVerified": "boolean | null",
"verifiedSince": "ISO date | null",
"affiliateUsername": "string | null",
"usernameChanges": "number | null",
"usernameLastChangedAt": "ISO date | null"
} | null
}
}Interactive demo
Run a paid lookup
Connect a wallet on Base, enter a handle, choose how many tweets to fetch, then sign the gasless payment authorization.
Wallet required before the paid request can run.