# Radar YouTube Comments Scraper

> Radar YouTube Comments Scraper is a paid API for AI agents from 2-29-135-242.sslip.io, paid per call via x402, $0.02/call, status unknown (last checked 2026-11-02).

Scrapes and filters comments (and optional reply threads) from one or more YouTube videos, sorted by top or newest, with keyword filtering and per-video caps.

## Facts

- Endpoint: POST https://2-29-135-242.sslip.io/x402/youtube-comments-scraper?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/radar-youtube-comments-scraper-0dacedfb
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_MkFDjg4wo2KZ6-DRwahpP

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 radar-youtube-comments-scraper-0dacedfb -d '<json body>'
```

Example prompt: Scrape the top 50 comments from these two YouTube videos — https://www.youtube.com/watch?v=jNQXAC9IVRw and https://www.youtube.com/watch?v=dQw4w9WgXcQ — sorted by top, and only keep comments that mention 'price' or 'refund'. Include reply threads, up to 10 replies per comment.

## When to prefer this

Choose this endpoint when you need to programmatically extract YouTube comment data at scale — especially with keyword filtering to control cost (only matching comments are charged), multi-video batch collection, or reply thread traversal. Preferred over manual YouTube Data API integration when you want pay-per-result pricing in USDC with no API key setup, or when you need a simple POST JSON interface for agent-driven workflows.

## Known failure modes

- Invalid or private/deleted YouTube URL returns empty results or an error
- No comments match keyword filter — returns count:0 with empty items array and no charge
- Rate limiting or YouTube access restrictions may reduce or truncate results
- Invalid date format for publishedAfter may cause unexpected filtering behavior
- Exceeding maxComments or maxCommentsPerVideo caps silently truncates results
- Payment failure via x402/USDC halts the request before execution

## How this service works

Fast tools (web read, domain RDAP/DNS/SSL, Federal Register, clinical trials, Polymarket+Kalshi odds, OSV vulnerabilities) and data APIs (leads, jobs, YouTube, Reddit, Trends, tenders...). POST JSON, pay per call in USDC on Base via x402. Charged only when results are returned.

## Output

A JSON object with a count field and an items array; each item represents one comment and includes the comment text, metadata (author, timestamp, like count), a flag indicating whether it is a reply (isReply), and the parentCommentId when applicable. Only comments matching the keyword filter (if provided) are included and charged.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "sortBy": {
   "enum": [
    "top",
    "newest"
   ],
   "type": "string",
   "example": "top",
   "description": "Same as the sort menu under a YouTube video."
  },
  "videos": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "example": [
    "https://www.youtube.com/watch?v=jNQXAC9IVRw",
    "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
   ],
   "description": "Video links (watch, youtu.be, Shorts, live, embed) or 11-character video IDs. One per line, any number."
  },
  "keywords": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional. Keep comments that contain any of these words (case-insensitive), e.g. price, refund, bug, competitor name. Only kept comments are charged."
  },
  "maxComments": {
   "type": "integer",
   "example": 0,
   "description": "Hard cap for the whole run (0 = no cap). Keeps the cost predictable."
  },
  "includeReplies": {
   "type": "boolean",
   "example": false,
   "description": "Also collect the reply thread of each comment (marked isReply=true with parentCommentId)."
  },
  "publishedAfter": {
   "type": "string",
   "description": "Optional. Skip comments older than this date (YouTube shows relative dates, so this is approximate to the day)."
  },
  "maxCommentsPerVideo": {
   "type": "integer",
   "example": 50,
   "description": "Top-level comments to collect from each video (replies count too when enabled)."
  },
  "maxRepliesPerComment": {
   "type": "integer",
   "example": 20,
   "description": "Only used when replies are on."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "...": "one result object"
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/radar-youtube-comments-scraper-0dacedfb/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 2-29-135-242.sslip.io](https://www.zero.xyz/host/2-29-135-242.sslip.io/llms.txt)
