# Bluesky Post Quotes Fetcher

> Bluesky Post Quotes Fetcher is a paid API for AI agents from x402.apidirect.io, paid per call via x402, $0.004/call, status unknown (last checked 2026-10-30).

Retrieves posts that quote a specific Bluesky post, sorted newest first, with optional AI sentiment analysis.

## Facts

- Endpoint: GET https://x402.apidirect.io/v1/bluesky/post/quotes?utm_source=zero.xyz
- Price: $0.004/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/bluesky-post-quotes-fetcher-fe2ba99e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_KLbEV8jATDMRpHi2Ktdib

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 bluesky-post-quotes-fetcher-fe2ba99e
```

Example prompt: Show me all the posts quoting this Bluesky post — https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l — and include the sentiment analysis for each one, fetching up to 3 pages of results.

## When to prefer this

Use this endpoint when you need to discover and analyze quote posts for a specific Bluesky post, especially when you want sentiment/emotion data attached to each quote. It's the right choice over generic social search when you have a specific post URL or AT URI and want structured quote retrieval with optional AI analysis.

## Known failure modes

- Invalid or non-existent post URL or AT URI returns an error or empty results
- Post has no quotes yet — returns empty list
- Rate limiting or payment failure results in 402 response
- Pages parameter exceeds maximum of 20, causing validation error
- Sentiment analysis may time out on large page batches

## How this service works

Get the posts that quote a Bluesky post, newest first.

## Output

Returns a paginated list of Bluesky posts that quote the specified post, ordered newest first. Each result includes post content and metadata. When sentiment analysis is enabled, each post also includes an emotions object (joy, trust, fear, surprise, sadness, disgust, anger, anticipation scored 0–100), a dominant emotion, emotional intensity (0–10), and polarity (positive, negative, or neutral).

## 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",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "url": {
       "type": "string",
       "maxLength": 500,
       "description": "Bluesky post URL, e.g. https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l (max 500 characters). Provide either url or post_id."
      },
      "pages": {
       "type": "integer",
       "default": 1,
       "maximum": 20,
       "minimum": 1,
       "description": "Number of pages to fetch and merge into one response (1-20, billed per page returned). Each page returns up to 50 results. Fetching stops early when there are no more results."
      },
      "post_id": {
       "type": "string",
       "maxLength": 200,
       "description": "The post's AT URI as returned in post_id, e.g. at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3l6oveex3ii2l (max 200 characters). Provide either url or post_id."
      },
      "get_sentiment": {
       "type": "boolean",
       "default": false,
       "description": "Set to true to add AI emotion analysis to each result. Adds a `sentiment` object containing `emotions` (joy, trust, fear, surprise, sadness, disgust, anger and anticipation, each scored 0-100), `dominant_emotion`, `emotional_intensity` (0-10), and `polarity` (positive, negative or neutral). Any item"
      }
     }
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/bluesky-post-quotes-fetcher-fe2ba99e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.apidirect.io](https://www.zero.xyz/host/x402.apidirect.io/llms.txt)
