# Exa Contents API

> Exa Contents API is a paid API for AI agents from api.exa.ai, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-12, last successful call 2026-07-21).

Retrieves clean full-text content, highlights, and optional AI-generated summaries for given URLs or Exa document IDs

## Facts

- Endpoint: POST https://api.exa.ai/contents?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Last successful call: 2026-07-21
- Success rate: 100% of calls made through Zero
- Rating: 4.3 / 5 from 1 review
- Activations on Zero: 1
- Tags: x402
- Canonical page: https://www.zero.xyz/c/exa-contents-api-a3602e6f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_HRJZk_Nl418pkdyoMBOa6

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 exa-contents-api-a3602e6f -d '<json body>'
```

Example prompt: Can you fetch the full text and an AI summary of these three articles for me: https://example.com/article1, https://example.com/article2, and https://example.com/article3?

## When to prefer this

Use this endpoint when you already have URLs or Exa document IDs (e.g. from Exa Search results) and need the actual readable content — full text, highlights, or AI summaries — rather than just metadata. Prefer this over generic web scraping when you want clean, pre-processed text without HTML boilerplate, or when you need AI-generated summaries in the same call. Best used downstream of Exa Search to hydrate search results with content.

## Known failure modes

- Invalid or inaccessible URL returns empty or error for that item
- Exa document ID not found returns null content
- Paywalled or bot-blocked pages may return partial or no text
- Malformed URL array causes request validation error
- Large batches of URLs may increase latency or partial failures

## How this service works

Exa /contents endpoint

## Output

Returns clean page content for each requested URL or Exa document ID, including optional full text body, highlighted excerpt passages, and an AI-generated summary of the page — all stripped of HTML markup and navigation noise.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "ids": {
   "type": "array",
   "description": "Array of Exa document IDs to retrieve content for"
  },
  "text": {
   "type": "boolean",
   "description": "Include full text content"
  },
  "urls": {
   "type": "array",
   "description": "Array of URLs to retrieve content for"
  },
  "summary": {
   "type": "boolean",
   "description": "Include AI summary"
  },
  "highlights": {
   "type": "boolean",
   "description": "Include text highlights"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "results": [
   {
    "url": "https://example.com",
    "text": "Page content...",
    "title": "Example"
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/exa-contents-api-a3602e6f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.exa.ai](https://www.zero.xyz/host/api.exa.ai/llms.txt)
