# Crypto Social Sentiment Search (X/Twitter)

> Crypto Social Sentiment Search (X/Twitter) is a paid API for AI agents from kr-x402-mvp.kgy5612.workers.dev, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-31).

Searches X (Twitter) for crypto-related posts and returns structured sentiment signals, engagement metrics, and top claims for a given query or token.

## Facts

- Endpoint: GET https://kr-x402-mvp.kgy5612.workers.dev/crypto/social-sentiment?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/crypto-social-sentiment-search-x-twitter-336726ac
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_17tQlIatT7Lm0q0sOIUOm

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability crypto-social-sentiment-search-x-twitter-336726ac
```

Example prompt: What's the current social sentiment on X for $BTC — search for the top 10 most relevant recent posts in English and summarize whether the community is bullish or bearish, including engagement stats and the top claim?

## When to prefer this

Use this endpoint when an AI trading or onchain agent needs real-time social sentiment from X for a specific crypto token, narrative, or handle — especially when the agent wants a structured sentiment score and top claim rather than raw tweet text. It is pay-per-call with no API key required (x402/USDC), making it ideal for autonomous agents that need to query crypto social signals on demand without managing API credentials. Prefer this over generic Twitter scrapers when you need the aggregated signal object with cashtag extraction and next-step endpoint suggestions tailored for crypto trading workflows.

## Known failure modes

- No posts found for obscure or misspelled query — returns empty posts array
- Query too broad returns low-signal posts with neutral sentiment
- Rate limit or X API upstream error returns 5xx
- Invalid date range (since/until outside 7-day window) causes 400
- Payment failure via x402 (insufficient USDC balance) blocks the call
- next_token expired or invalid causes pagination failure

## How this service works

Pay-per-call crypto microdata for trading/onchain AI agents via x402 (USDC on Base): Base gas, token risk, balances, multi-venue prices, Hyperliquid book/funding, kimchi premium. No API keys.

## Output

Returns a list of matching X posts with author details (handle, follower count, verification), engagement metrics (likes, reposts, replies, quotes), and an aggregated signal object containing: sentiment label (bullish/bearish/neutral), sentiment score (-1 to 1), top cashtags, top terms, top claim post, notable handles, and aggregate engagement. Also includes suggested next endpoints for follow-up calls and a pagination token for additional results.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "q": {
       "type": "string",
       "examples": [
        "bitcoin",
        "$ETH",
        "x402",
        "from:base"
       ],
       "maxLength": 200,
       "minLength": 1,
       "description": "X search query (operators ok); or use the twit.sh-style filters below"
      },
      "to": {
       "type": "string",
       "description": "Replying to handle"
      },
      "from": {
       "type": "string",
       "description": "From handle"
      },
      "lang": {
       "type": "string",
       "maxLength": 5,
       "description": "Language filter e.g. en, ko"
      },
      "sort": {
       "enum": [
        "recency",
        "relevancy"
       ],
       "type": "string",
       "description": "Default relevancy"
      },
      "limit": {
       "type": "integer",
       "maximum": 20,
       "minimum": 1,
       "description": "Posts (default 10)"
      },
      "since": {
       "type": "string",
       "description": "YYYY-MM-DD (last 7 days)"
      },
      "until": {
       "type": "string",
       "description": "YYYY-MM-DD"
      },
      "words": {
       "type": "string",
       "description": "All of these words"
      },
      "phrase": {
       "type": "string",
       "description": "Exact phrase"
      },
      "anyWords": {
       "type": "string",
       "description": "Any of these words (space/comma separated)"
      },
      "hashtags": {
       "type": "string",
       "description": "Hashtags (comma separated, # optional)"
      },
      "minLikes": {
       "type": "integer",
       "minimum": 0
      },
      "username": {
       "type": "string",
       "description": "Timeline shortcut: posts from this handle"
      },
      "noneWords": {
       "type": "string",
       "description": "None of these words"
      },
      "mentioning": {
       "type": "string",
       "description": "Mentions handle"
      },
      "minReplies": {
       "type": "integer",
       "minimum": 0
      },
      "minReposts": {
       "type": "integer",
       "minimum": 0
      },
      "next_token": {

… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "n": 1,
  "q": "bitcoin",
  "next": [
   "/crypto/prices?symbols=BTC",
   "/crypto/prediction-markets?q=bitcoin",
   "/crypto/market-pulse"
  ],
  "posts": [
   {
    "id": "1851234567890123456",
    "url": "https://x.com/example/status/1851234567890123456",
    "lang": "en",
    "text": "$BTC ETF inflows strong again, ATH watch",
    "author": {
     "name": "Example",
     "handle": "example",
     "verified": true,
     "followers": 250000
    },
    "metrics": {
     "likes": 1200,
     "quotes": 12,
     "replies": 85,
     "reposts": 210
    },
    "created_at": "2026-10-30T01:20:00Z"
   }
  ],
  "signal": {
   "cashtags": [
    "$BTC"
   ],
   "sentiment": "bullish",
   "top_claim": {
    "url": "https://x.com/example/status/1851234567890123456",
    "text": "$BTC ETF inflows strong again, ATH watch",
    "handle": "example"
   },
   "top_terms": [
    "etf",
    "inflows",
    "ath"
   ],
   "engagement": {
    "likes": 1200,
    "replies": 85,
    "reposts": 210
   },
   "notable_handles": [
    {
     "handle": "example",
     "followers": 250000
    }
   ],
   "sentiment_score": 0.4
  },
  "source": "x-api-v2-recent-search",
  "updated_at": "2026-10-30T01:50:00Z"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/crypto-social-sentiment-search-x-twitter-336726ac/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from kr-x402-mvp.kgy5612.workers.dev](https://www.zero.xyz/host/kr-x402-mvp.kgy5612.workers.dev/llms.txt)
