# X Tweet Lookup

> X Tweet Lookup is a paid API for AI agents from x402.botsmith.dev, paid per call via x402, $0.015/call, status healthy (last checked 2026-10-21, last successful call 2026-10-14).

Fetches a single X (Twitter) post by numeric tweet ID, returning full text, author info, engagement metrics, hashtags, links, and mentions as structured JSON.

## Facts

- Endpoint: GET https://x402.botsmith.dev/x/tweet?utm_source=zero.xyz
- Price: $0.015/call
- Payment: x402
- Status: healthy
- Last checked: 2026-10-21
- Last successful call: 2026-10-14
- Success rate: 82% of calls made through Zero
- Activations on Zero: 22
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x-tweet-lookup-7e2e0a1e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6pHRCMcxSOyR0bEt4DyVp

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 x-tweet-lookup-7e2e0a1e
```

Example prompt: Can you pull up the full details for tweet ID 1823849382710472705 — I need the text, author handle, like and retweet counts, and any hashtags or links in it?

## When to prefer this

Use this endpoint when you need structured metadata for a specific known tweet ID and do not have an X API key or developer account. It is ideal for agents that need engagement metrics, author details, or parsed entities (hashtags, links, mentions) from a single post without setting up X API credentials. Prefer this over raw X API access when simplicity, no-auth operation, and clean JSON output are priorities.

## Known failure modes

- Tweet ID not found or deleted — likely 404 or empty result
- Invalid tweet ID format (non-numeric or too long) — rejected by schema validation
- Tweet from a private/protected account — inaccessible without auth
- Rate limiting or upstream X API unavailability — service error
- Payment failure (insufficient USDC balance) — 402 response before data is returned

## How this service works

X Tweet Lookup ($0.015/call): Fetch one X (Twitter) post by numeric id: full text, author, ISO timestamp, like/retweet/reply/view counts, hashtags, expanded links and mentions as clean JSON. No X account or API key needed.

## Output

A JSON object containing: tweet ID, permalink URL, full post text, ISO 8601 timestamp, language code, author object (handle, display name, user ID), engagement metrics (likes, retweets, replies, quotes, views), array of hashtags, array of expanded outbound URLs, and array of mentioned handles.

## 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": [
      "id"
     ],
     "properties": {
      "id": {
       "type": "string",
       "pattern": "^[0-9]{1,25}$",
       "description": "Numeric tweet/post id"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "id",
      "url",
      "text",
      "createdAt",
      "lang",
      "author",
      "metrics",
      "hashtags",
      "links",
      "mentions"
     ],
     "properties": {
      "id": {
       "type": "string"
      },
      "url": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ]
      },
      "lang": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ]
      },
      "text": {
       "type": "string"
      },
      "links": {
       "type": "array",
       "items": {
        "type": "string"
       },
       "description": "Expanded outbound URLs"
      },
      "author": {
       "type": "object",
       "required": [
        "handle",
        "name",
        "id"
       ],
       "properties": {
        "id": {
         "anyOf": [
          {
           "type": "string"
          },
          {
           "type": "null"
          }
         ]
        },
        "name": {
         "anyOf": [
          {
           "type": "string"
          },
          {
           "type": "null"
          }
         ]
        },
        "handle": {
         "anyOf": [
          {
           "type": "string"
          },
          {
           "type": "null"
          }
         ]
        }
       },
       "additionalProperties": false
      },
      "metrics": {
       "type": "object",
       "required": [
        "likes",
        "retweets",
        "replies",
        "quotes",
        "views"
       ],
       "properties": {
        "likes": {
   
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x-tweet-lookup-7e2e0a1e/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)
