---
title: "PageFlash Docs - Set up your first crawler path"
description: "Create an account, register a domain, create a scoped key, and verify the first PageFlash render before routing crawler traffic."
site_name: "PageFlash"
lang: "en"
url: "https://pageflash.io/docs/getting-started"
og:
  image: "https://pageflash.io/og/pageflash-og.png"
  type: "website"
twitter:
  card: "summary_large_image"
robots: "index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"
---

**Browse docs 4 task-based guides**

Activate

# Set up your first crawler path

Create an account, register a domain, scope a key, and prove the first render before changing crawler traffic.

## 1\. Account setup

Start with a free account to inspect one crawler path before paying or changing production traffic. Free includes 500 fresh browser renders/month for one registered domain.

1.  [Create account](https://pageflash.io/register) and verify your email.
2.  Open the dashboard after sign-in.
3.  Keep this page open while you add the domain and first key.

PageFlash keys do not work until at least one domain is registered. This prevents a leaked key from rendering arbitrary third-party sites.

Before you start, make sure you can update the edge, server, or proxy that owns crawler routing and that the route you plan to render is public.

## 2\. Add the domain you want crawlers to see

Register the production hostname of your SPA, for example `app.example.com`. Requests for unregistered hostnames are rejected before the browser starts.

1.  Open [Dashboard - Domains](https://pageflash.io/dashboard/domains).
2.  Enter the hostname without protocol or path.
3.  Save the returned domain ID if you plan to automate sitemap warming or push refresh.

Hostname format

```
example.com
www.example.com
docs.example.com
```

## 3\. Create a scoped API key

Create one key per integration. For production crawler middleware, use a domain-scoped key and store it only on the server.

1.  Open [Dashboard - API keys](https://pageflash.io/dashboard/api-keys).
2.  Name the key after the integration, such as `production middleware`.
3.  Select a domain scope, then copy the key once and store it as a server-side secret.

Environment variable

```
PAGEFLASH_KEY=pk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
```

## 4\. Run the first render

Use the render endpoint to confirm the key, domain scope, and first fresh render all pass before adding middleware.

First HTML render

```
curl -H "Authorization: Bearer $PAGEFLASH_KEY" \
  "https://pageflash.io/render?url=https://example.com/pricing"
```

A successful response returns the rendered HTML crawlers will see. If monthly quota is exhausted on a cache miss, PageFlash returns`MONTHLY_QUOTA_EXCEEDED` before the browser starts.

Success means the crawler request returns the title, H1, canonical, and public body you expect.

Stuck or have a question? Email [hello@pageflash.io](mailto:hello@pageflash.io).

## Structured data (JSON-LD)

```json
[{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://pageflash.io/#organization","name":"PageFlash","url":"https://pageflash.io/","logo":{"@type":"ImageObject","url":"https://pageflash.io/android-chrome-512x512.png","width":512,"height":512}},{"@type":"WebSite","@id":"https://pageflash.io/#website","name":"PageFlash","url":"https://pageflash.io/","description":"Verify crawler HTML for registered public SPA routes before routing production crawler traffic.","publisher":{"@id":"https://pageflash.io/#organization"}},{"@type":"SoftwareApplication","@id":"https://pageflash.io/#software","name":"PageFlash","applicationCategory":"DeveloperApplication","operatingSystem":"Web","url":"https://pageflash.io/","description":"Render registered public SPA routes for the crawler user-agents your integration selects, then verify the HTML before production routing.","publisher":{"@id":"https://pageflash.io/#organization"},"offers":[{"@type":"Offer","name":"Free","price":"0","priceCurrency":"USD","url":"https://pageflash.io/pricing"},{"@type":"Offer","name":"Starter","price":"19","priceCurrency":"USD","url":"https://pageflash.io/pricing"},{"@type":"Offer","name":"Growth","price":"49","priceCurrency":"USD","url":"https://pageflash.io/pricing"},{"@type":"Offer","name":"Pro","price":"129","priceCurrency":"USD","url":"https://pageflash.io/pricing"},{"@type":"Offer","name":"Enterprise","price":"499","priceCurrency":"USD","url":"https://pageflash.io/pricing"}]}]},{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://pageflash.io/docs/getting-started#webpage","url":"https://pageflash.io/docs/getting-started","name":"PageFlash Docs - Set up your first crawler path","isPartOf":{"@id":"https://pageflash.io/#website"},"about":{"@id":"https://pageflash.io/#software"}},{"@type":"BreadcrumbList","@id":"https://pageflash.io/docs/getting-started#breadcrumbs","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://pageflash.io/"},{"@type":"ListItem","position":2,"name":"Docs","item":"https://pageflash.io/docs"},{"@type":"ListItem","position":3,"name":"Get started","item":"https://pageflash.io/docs/getting-started"}]}]}]
```
