# CrowdPull Review & Complaint Mining API

> CrowdPull Review & Complaint Mining API is a paid API for AI agents from crowdpull.click, paid per call via x402, $0.19/call, status unknown (last checked 2026-09-14).

Scrapes and normalizes customer reviews and complaints from AliExpress, Target, and Flipkart into ranked, deduplicated datasets

## Facts

- Endpoint: POST https://crowdpull.click/api/workflows/review-complaints
- Price: $0.19/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/crowdpull-review-complaint-mining-api-8355c694
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_54_HeUau7NvmHgn_wjVWD

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 crowdpull-review-complaint-mining-api-8355c694 -d '<json body>'
```

Example prompt: Pull up to 50 customer reviews and complaints about the 'Anker PowerCore 10000' from AliExpress and Target — I want normalized, deduplicated results with enrichment included so I can see what people are unhappy about.

## When to prefer this

Use this endpoint when you need to aggregate product reviews and complaints across AliExpress, Target, and Flipkart in a single normalized call. Prefer this over single-source scrapers when cross-marketplace coverage and deduplication matter. Best for competitive research, product quality audits, or complaint mining workflows.

## Known failure modes

- Invalid source name returns validation error on sources array
- maxItems or maxPerSource out of range returns 400
- Query is too vague and returns zero results from all sources
- Job times out before waitForFinishSeconds elapses, returning partial results
- Payment failure via x402 returns 402 before job starts

## How this service works

CrowdPull turns public web pages into useful datasets for marketplaces, housing, reviews, jobs, social posts, drug prices, video, and public records.

## Output

Returns a job token, workflow ID, and an array of job objects representing the fan-out scrape tasks. Each job collects reviews from the selected sources (AliExpress, Target, Flipkart), then normalizes, deduplicates, and ranks complaint and review rows into a unified dataset.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "properties": {
    "query": {
     "type": "string",
     "description": "Main search term, keyword, product, role, company, or item."
    },
    "filters": {
     "type": "object",
     "additionalProperties": true
    },
    "sources": {
     "type": "array",
     "items": {
      "enum": [
       "aliexpress-reviews-scraper",
       "target-products-scraper",
       "flipkart-products-scraper"
      ],
      "type": "string"
     },
     "description": "Optional subset of sources to run. Omit to use the workflow defaults."
    },
    "location": {
     "type": "string",
     "description": "City, ZIP, state, market, or source-supported location."
    },
    "maxItems": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "searchQuery": {
     "type": "string",
     "description": "Alias for query."
    },
    "maxPerSource": {
     "type": "integer",
     "default": 25,
     "maximum": 100,
     "minimum": 1
    },
    "sourceInputs": {
     "type": "object",
     "description": "Optional per-source input overrides keyed by source name.",
     "additionalProperties": true
    },
    "includeDetails": {
     "type": "boolean",
     "default": false
    },
    "includeEnrichment": {
     "type": "boolean",
     "default": true
    }
   },
   "description": "Review Complaint Mining Bundle request. CrowdPull fans this out to the selected public-data sources, then normalizes, deduplicates, and ranks the rows.",
   "additionalProperties": true
  },
  "options": {
   "type": "object",
   "properties": {
    "build": {
     "type": "string",
     "maxLength": 100,
     "minLength": 1
    },
    "memory": {
     "type": "integer",
     "maximum": 8192,
     "minimum": 128
    },
    "waitForFinishSeconds": {
     "type": "integer",
     "default": 10,
     "maximum": 60,
     "minimum": 0
    }
   },
   "description": "Optional CrowdPull job options. CrowdPull caps each paid job so low-cost agent calls cannot accidentally start a large collection.",
   "additionalProperties": false
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "type": "object",
  "required": [
   "token",
   "workflow",
   "jobs"
  ],
  "properties": {
   "jobs": {
    "type": "array",
    "items": {
     "type": "object"
    }
   },
   "token": {
    "type": "string"
   },
   "workflow": {
    "type": "string"
   }
  },
  "additionalProperties": true
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/crowdpull-review-complaint-mining-api-8355c694/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from crowdpull.click](https://www.zero.xyz/host/crowdpull.click/llms.txt)
