> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pipellm.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Reader

> Read a web page and return clean text through PipeLLM WebSearch

Use this route when you already know the page URL and want PipeLLM WebSearch to
fetch and convert it into clean text.

## Endpoint

| Method | Endpoint                                     |
| ------ | -------------------------------------------- |
| `GET`  | `https://api.pipellm.ai/v1/websearch/reader` |

## Authentication

```text theme={null}
Authorization: Bearer $PIPELLM_API_KEY
```

## Query Parameters

| Parameter | Type   | Required | Description          |
| --------- | ------ | -------- | -------------------- |
| `url`     | string | Yes      | The page URL to read |

## Example Request

```bash theme={null}
curl -X GET "https://api.pipellm.ai/v1/websearch/reader?url=https://go.dev" \
  -H "Authorization: Bearer $PIPELLM_API_KEY"
```

## Response Shape

```json theme={null}
{
  "code": 200,
  "message": "ok",
  "content": "# The Go Programming Language\n\nGo is an open source programming language..."
}
```

## Error Shape

```json theme={null}
{
  "code": 400,
  "message": "url parameter is required"
}
```

## Notes

* This route proxies to the internal `/api/reader` handler.
* The response shape uses `content` instead of `data`.
* The reader path is also the most direct HTTP equivalent of `pipellm_web_reader`.

## Related Docs

<Columns cols={3}>
  <Card title="pipellm-websearch (npm)" icon="box" href="/websearch/npm-package">
    Enable page-reading as an OpenClaw tool
  </Card>

  <Card title="Deep Search" icon="magnifying-glass" href="/websearch/search-api">
    Use search first when you do not already know the target page
  </Card>

  <Card title="WebSearch Overview" icon="globe" href="/websearch/overview">
    Product overview and route matrix
  </Card>
</Columns>
