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

# Quickstart

> Make your first Reader request in under a minute.

By the end of this page you'll have scraped a real web page with Reader and seen clean markdown come back. Takes about 60 seconds.

## Step 1 - Get your API key

> [card] [Open Dashboard →](https://console.reader.dev)
>
> Sign up free at console.reader.dev. You get **1,000 credits every month** on the free tier - no credit card required.

Once you're signed in:

1. Click **API Keys** in the sidebar
2. Click **Create API Key** and give it a name (like "Playground")
3. Copy the key - it starts with `rdr_` and you'll only see it once

> [!WARNING]
>
> Treat your API key like a password. Never commit it to version control or expose it in client-side code.

## Step 2 - Make your first request

Reader has one endpoint for everything: `POST /v1/read`. Send a URL, get back clean markdown.

```bash curl theme={null}
curl -X POST https://api.reader.dev/v1/read \
  -H "Content-Type: application/json" \
  -H "x-api-key: rdr_your_api_key" \
  -d '{
    "url": "https://example.com"
  }'
```

```javascript JavaScript theme={null}
import { ReaderClient } from "@vakra-dev/reader-js";

const reader = new ReaderClient({
  apiKey: "rdr_your_api_key",
});

const result = await reader.read({
  url: "https://example.com",
});

if (result.kind === "scrape") {
  console.log(result.data.markdown);
}
```

```python Python theme={null}
from reader_py import ReaderClient

with ReaderClient(api_key="rdr_your_api_key") as reader:
    result = reader.read(url="https://example.com")
    if result.kind == "scrape":
        print(result.data.markdown)
```

You should get back something like:

```json theme={null}
{
  "success": true,
  "data": {
    "markdown": "# Example Domain\n\nThis domain is for use in...",
    "metadata": {
      "title": "Example Domain",
      "description": "...",
      "statusCode": 200
    }
  }
}
```

That's it. You just scraped a page.

## Step 3 - Try something more interesting

Scrape a real article with main content extraction:

```bash theme={null}
curl -X POST https://api.reader.dev/v1/read \
  -H "Content-Type: application/json" \
  -H "x-api-key: rdr_your_api_key" \
  -d '{
    "url": "https://en.wikipedia.org/wiki/Web_scraping",
    "formats": ["markdown"],
    "onlyMainContent": true
  }'
```

Reader strips navigation, sidebars, and footers - you get just the article body as markdown. Perfect for feeding to an LLM.

## What's next

> [card] [Scrape vs Crawl](https://reader.mintlify.site/home/concepts/scrape-vs-crawl.md)
>
> Learn when to use a single URL vs an array vs a crawl.

> [card] [Batch scraping](https://reader.mintlify.site/home/guides/advanced/batch-scraping.md)
>
> Scrape hundreds of URLs in parallel.

> [card] [Crawling a website](https://reader.mintlify.site/home/guides/advanced/crawling.md)
>
> Discover and scrape every page on a domain.

> [card] [SDKs](https://reader.mintlify.site/sdk/overview.md)
>
> Official JavaScript and Python clients.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.