Free previews and paid x402 v2 endpoints for privacy-safe Pollen prompt intelligence.
Aggregate API
Pollen exposes only privacy-qualified aggregate cells. It never returns prompt text, individual sessions, source code, tool inputs, or tool output.
The verified production API is https://api.usepollen.xyz.
The project site is https://usepollen.xyz.
Both /path and /api/v1/path forms are supported.
Inspect before paying
curl https://api.usepollen.xyz/catalogGET /catalog is the machine-readable source for schemas, prices, freshness, provenance, privacy policy, free previews, and x402 v2 headers.
Privacy contract
- Every published cell has at least five distinct contributors.
- Below-threshold cells are suppressed before publication.
- Public handlers read only precomputed rollups.
- The API offers no raw-event or free-form query endpoint.
- Paid endpoints do not settle a payment when no published rows are available.
Free previews
Free responses are cached for five minutes.
| Endpoint | Purpose |
|---|---|
GET /catalog | Product contract, schemas, prices, and provenance |
GET /network | Receipt-network readiness and latest privacy-safe snapshot |
GET /trending/tools | Latest two published tool weeks |
GET /trending/mcp | Latest two published MCP weeks |
GET /overview | Latest published network totals |
GET /active-revenue/claims/:wallet | Public V3 Merkle claim material and planned/live cutover status |
Before the first cohort reaches k=5, /network intentionally reports:
{
"source": "network_receipts",
"k_anonymity": 5,
"status": "warming_up",
"weeks": []
}Paid endpoints
Paid responses use x402 v2, USDC on Base, and Cache-Control: no-store.
| Endpoint | Price | Success schema |
|---|---|---|
GET /tools/history?tool=<name> | $0.01 | { k_anonymity, tool, history[] } |
GET /mcp/history?server=<name> | $0.01 | { k_anonymity, server, history[] } |
GET /grid | $0.05 | { k_anonymity, tools[], mcpServers[] } |
GET /export | $0.25 | { k_anonymity, count, cells[] } |
A history row has this shape:
{
"week": "2026-W34",
"calls": 120,
"sessions": 40,
"successRate": 0.93,
"contributors": 8
}This is a schema illustration, not a claim about current production volume.
When a paid query has no privacy-qualified rows, the response is HTTP 425 and is not settled:
{
"status": "warming_up",
"charged": false,
"error": "No privacy-qualified published rows are available for the grid.",
"minimum_contributors": 5,
"preview": "/network"
}See x402 v2 for the challenge, signature, and settlement flow.
Active-revenue claim lookup
The claim lookup is a public blockchain support endpoint, not an aggregate prompt-data product. It returns only wallet-addressed Merkle material. It never returns contributor IDs, World ID nullifiers, scores, receipts, or prompt text.
Before V3 cutover it reports cutover_status: "planned" and must not be interpreted as a live claim promise. After an approved cutover, a claim is actionable only when its root is published and unexpired on the verified V3 vault.
Freshness and provenance
Rollups are scheduled every 15 minutes in UTC. Older weekly history outside the rolling recompute window is frozen. Opt-in CLI installations submit the closed receipt described in What Leaves Your Device, and the API reads its published aggregates.