# botsmith X Pulse

> botsmith X Pulse is a paid API for AI agents from x402.botsmith.dev, paid per call via x402, $0.05/call, status unknown (last checked 2026-11-04).

Scores the latest 40 X (Twitter) posts about a ticker or topic into a bullish/neutral/bearish sentiment probability using the Jev model

## Facts

- Endpoint: GET https://x402.botsmith.dev/x/pulse?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-04
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/botsmith-x-pulse-a17173c5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-_JxZarBR4vho6xCDqeSN

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 botsmith-x-pulse-a17173c5
```

Example prompt: What's the current X sentiment on $BTC — is the crowd bullish or bearish right now, and how confident is the model?

## When to prefer this

Choose this endpoint when you need a fast, single-call social sentiment read on a crypto ticker or topic from X without needing your own X account or API key. It is purpose-built for financial sentiment use cases with calibrated probabilities and curated top posts for citation, making it superior to raw search endpoints when you want scored, structured sentiment rather than raw post lists.

## Known failure modes

- No posts found for the topic returns null for bullish/bearish/stance fields
- Topic string too short (< 1 char) or too long (> 100 chars) causes validation error
- Downstream X data fetch failure returns an error with no sentiment output
- Payment not received or x402 handshake fails results in 402 Payment Required response
- Ambiguous query may return low-confidence or neutral stance

## How this service works

X Pulse ($0.05/call): Is X bullish or bearish on a ticker or topic right now? Reads the latest 40 X (Twitter) posts about it (retweets excluded) and has TypeSafe's Jev model score them into a calibrated probability that the chatter is bullish, plus a bullish/neutral/bearish stance with a probability for each, the time window and author count it covers, and the five most engaged posts to cite. One call, no X account or API key. Sentiment data, not investment advice.

## Output

Returns a bullish probability (0–1), a bearish probability (1 minus bullish), a stance object with pick (bullish/neutral/bearish), confidence score, and per-label probabilities, plus sample metadata covering post count, unique author count, and the time window of posts read, and an array of the five most-engaged posts with URL, author, text, creation time, likes, and views. Also includes the Jev model version used.

## 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",
     "required": [
      "topic"
     ],
     "properties": {
      "topic": {
       "type": "string",
       "maxLength": 100,
       "minLength": 1,
       "description": "Ticker, name or X search query, e.g. \"$BTC\", \"Solana\" or \"x402\""
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "topic",
      "bullish",
      "bearish",
      "stance",
      "sample",
      "topPosts",
      "model"
     ],
     "properties": {
      "model": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "description": "Jev model version that scored it"
      },
      "topic": {
       "type": "string"
      },
      "sample": {
       "type": "object",
       "required": [
        "posts",
        "authors",
        "from",
        "to"
       ],
       "properties": {
        "to": {
         "anyOf": [
          {
           "type": "string"
          },
          {
           "type": "null"
          }
         ]
        },
        "from": {
         "anyOf": [
          {
           "type": "string"
          },
          {
           "type": "null"
          }
         ],
         "description": "Oldest post read, ISO 8601"
        },
        "posts": {
         "type": "integer",
         "maximum": 9007199254740991,
         "minimum": -9007199254740991
        },
        "authors": {
         "type": "integer",
         "maximum": 9007199254740991,
         "minimum": -9007199254740991
        }
       },
       "additionalProperties": false
      },
      "stance": {
       "anyOf": [
        {
         "type": "object",
         "required": [
          "pick",
          "confidence",
          "probabilities"
         ],
         "properties": {
          "pick": {
           "enum": [
            "bullish",
            "neutral",
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/botsmith-x-pulse-a17173c5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.botsmith.dev](https://www.zero.xyz/host/x402.botsmith.dev/llms.txt)
