You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/docs/ai-search/configuration/data-source/website.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -51,7 +51,7 @@ If you have Security rules configured to block bot activity, you can add a rule
51
51
You can choose how pages are parsed during crawling:
52
52
53
53
-**Static sites**: Downloads the raw HTML for each page.
54
-
-**Rendered sites**: Loads pages with a headless browser and downloads the fully rendered version, including dynamic JavaScript content. Note that the [Browser Rendering](/browser-rendering/platform/pricing/) limits and billing apply.
54
+
-**Rendered sites**: Loads pages with a headless browser and downloads the fully rendered version, including dynamic JavaScript content. Note that the [Browser Rendering](/browser-rendering/pricing/) limits and billing apply.
55
55
56
56
## Storage
57
57
During setup, AI Search creates a dedicated R2 bucket in your account to store the pages that have been crawled and downloaded as HTML files. This bucket is automatically managed and is used only for content discovered by the crawler. Any files or objects that you add directly to this bucket will not be indexed.
|[**AI Gateway**](/ai-gateway/reference/pricing/)| Monitors and controls model usage |
18
-
|[**Browser Rendering**](/browser-rendering/platform/pricing/)| Loads dynamic JavaScript content during [website](/ai-search/configuration/data-source/website/) crawling with the Render option |
18
+
|[**Browser Rendering**](/browser-rendering/pricing/)| Loads dynamic JavaScript content during [website](/ai-search/configuration/data-source/website/) crawling with the Render option |
19
19
20
20
For more information about how each resource is used within AI Search, reference [How AI Search works](/ai-search/concepts/how-ai-search-works/).
Below you will find answers to our most commonly asked questions about Browser Rendering.
14
14
15
-
For pricing questions, visit the [pricing FAQ](/browser-rendering/platform/pricing/#faq).
16
-
For usage limits questions, visit the [limits FAQ](/browser-rendering/platform/limits/#faq).
15
+
For pricing questions, visit the [pricing FAQ](/browser-rendering/pricing/#faq).
16
+
For usage limits questions, visit the [limits FAQ](/browser-rendering/limits/#faq).
17
17
If you cannot find the answer you are looking for, join us on [Discord](https://discord.cloudflare.com).
18
18
19
19
---
@@ -85,9 +85,9 @@ It may be because you increased the height and width of the viewport. To fix thi
85
85
86
86
### `Error processing the request: Unable to create new browser: code: 429: message: Browser time limit exceeded for today`
87
87
88
-
This error indicates you have hit the daily browser-instance limit on the Workers Free plan. [Free-plan accounts are capped at free plan limit is 10 minutes of browser use a day](/browser-rendering/platform/limits/#workers-free) once you exceed those, further creation attempts return a 429 until the next UTC day.
88
+
This error indicates you have hit the daily browser-instance limit on the Workers Free plan. [Free-plan accounts are capped at free plan limit is 10 minutes of browser use a day](/browser-rendering/limits/#workers-free) once you exceed those, further creation attempts return a 429 until the next UTC day.
89
89
90
-
To resolve: [Upgrade to a Workers Paid plan](/workers/platform/pricing/) which allows for more than 10 minutes of usage a day and has higher [limits](/browser-rendering/platform/limits/#workers-paid). If you recently upgraded but still see this error, try redeploying your Worker to ensure your usage is correctly associated with your new plan.
90
+
To resolve: [Upgrade to a Workers Paid plan](/workers/platform/pricing/) which allows for more than 10 minutes of usage a day and has higher [limits](/browser-rendering/limits/#workers-paid). If you recently upgraded but still see this error, try redeploying your Worker to ensure your usage is correctly associated with your new plan.
Copy file name to clipboardExpand all lines: src/content/docs/browser-rendering/how-to/pdf-generation.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,11 +12,11 @@ As seen in [this Workers bindings guide](/browser-rendering/workers-bindings/scr
12
12
You can generate PDFs with Browser Rendering in two ways:
13
13
14
14
-**[REST API](/browser-rendering/rest-api/)**: Use the the [/pdf endpoint](/browser-rendering/rest-api/pdf-endpoint/). This is ideal if you don't need to customize rendering behavior.
15
-
-**[Workers Bindings](/browser-rendering/workers-bindings/)**: Use [Puppeteer](/browser-rendering/platform/puppeteer/) or [Playwright](/browser-rendering/platform/playwright/) with Workers Bindings for additional control and customization.
15
+
-**[Workers Bindings](/browser-rendering/workers-bindings/)**: Use [Puppeteer](/browser-rendering/puppeteer/) or [Playwright](/browser-rendering/playwright/) with Workers Bindings for additional control and customization.
16
16
17
17
Choose the method that best fits your use case.
18
18
19
-
The following example shows you how to generate a PDF using [Puppeteer](/browser-rendering/platform/puppeteer/).
19
+
The following example shows you how to generate a PDF using [Puppeteer](/browser-rendering/puppeteer/).
Copy file name to clipboardExpand all lines: src/content/docs/browser-rendering/limits.mdx
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,7 +30,7 @@ To increase this limit, go to the **Compute (Workers) > Workers plans** page in
30
30
[^1]: Rate limits are enforced with a fixed **per-second fill rate**. For example, a limit of 60 requests per minute translates to **1 request per second**. This means you cannot send all 60 requests at once; the API expects them to be spread evenly over the minute. If your account has a custom higher limit, it will also be enforced as a per-second rate.
31
31
32
32
:::note[Note on browser timeout]
33
-
By default, a browser will time out if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the [`keep_alive` option](/browser-rendering/platform/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
33
+
By default, a browser will time out if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the [`keep_alive` option](/browser-rendering/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
34
34
:::
35
35
36
36
## Workers Paid
@@ -50,7 +50,7 @@ The limits for Browser Rendering will continue to be raised over time. In the me
50
50
[^2]: Contact our team to request increases to this limit.
51
51
52
52
:::note[Note on browser timeout]
53
-
By default, a browser will time out if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the [`keep_alive` option](/browser-rendering/platform/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
53
+
By default, a browser will time out if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the [`keep_alive` option](/browser-rendering/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
54
54
:::
55
55
56
56
## Note on concurrency
@@ -70,11 +70,11 @@ To upgrade, go to the **Compute (Workers) > Workers plans** page in the Cloudfla
70
70
71
71
### Can I increase the browser timeout?
72
72
73
-
By default, a browser instance will time out after 60 seconds of inactivity. If you want to keep the browser open longer, you can use the [`keep_alive` option](/browser-rendering/platform/puppeteer/#keep-alive) which allows you to extend the timeout to up to 10 minutes.
73
+
By default, a browser instance will time out after 60 seconds of inactivity. If you want to keep the browser open longer, you can use the [`keep_alive` option](/browser-rendering/puppeteer/#keep-alive) which allows you to extend the timeout to up to 10 minutes.
74
74
75
75
### Is there a maximum session duration?
76
76
77
-
There is no fixed maximum lifetime for a browser session as long as it remains active. By default, Browser Rendering closes sessions after 1 minute of inactivity to prevent unintended usage. You can [increase this inactivity timeout](/browser-rendering/platform/puppeteer/#keep-alive) to up to 10 minutes.
77
+
There is no fixed maximum lifetime for a browser session as long as it remains active. By default, Browser Rendering closes sessions after 1 minute of inactivity to prevent unintended usage. You can [increase this inactivity timeout](/browser-rendering/puppeteer/#keep-alive) to up to 10 minutes.
78
78
79
79
If you need sessions to remain open longer, keep them active by sending a command at least once within your configured inactivity window (for example, every 10 minutes). Sessions also close when Browser Rendering rolls out a new release.
80
80
@@ -85,7 +85,7 @@ If you recently upgraded to the [Workers Paid plan](/workers/platform/pricing/)
85
85
### Error: `429 Too many requests`
86
86
87
87
When you make too many requests in a short period of time, Browser Rendering will respond with HTTP status code `429 Too many requests`.
88
-
The response includes a `Retry-After` header, which specifies how many seconds to wait before retrying. You can view your account's rate limits on the [Limits](/browser-rendering/platform/limits/) page.
88
+
The response includes a `Retry-After` header, which specifies how many seconds to wait before retrying. You can view your account's rate limits on the [Limits](/browser-rendering/limits/) page.
89
89
90
90
The example below demonstrates how to handle rate limiting gracefully by reading the `Retry-After` value and retrying the request after that delay.
91
91
@@ -141,9 +141,9 @@ try {
141
141
142
142
### Error: `429 Browser time limit exceeded for today`
143
143
144
-
This `Error processing the request: Unable to create new browser: code: 429: message: Browser time limit exceeded for today` indicates you have hit the daily browser limit on the Workers Free plan. [Workers Free plan accounts are limited](/browser-rendering/platform/limits/#workers-free) to 10 minutes of browser rendering usage per day. If you exceed that limit, you will receive a `429` error until the next UTC day.
144
+
This `Error processing the request: Unable to create new browser: code: 429: message: Browser time limit exceeded for today` indicates you have hit the daily browser limit on the Workers Free plan. [Workers Free plan accounts are limited](/browser-rendering/limits/#workers-free) to 10 minutes of browser rendering usage per day. If you exceed that limit, you will receive a `429` error until the next UTC day.
145
145
146
-
You can [increase your limits](/browser-rendering/platform/limits/#workers-paid) by upgrading to a Workers Paid plan on the **Workers plans** page of the Cloudflare dashboard:
146
+
You can [increase your limits](/browser-rendering/limits/#workers-paid) by upgrading to a Workers Paid plan on the **Workers plans** page of the Cloudflare dashboard:
Copy file name to clipboardExpand all lines: src/content/docs/browser-rendering/playwright/index.mdx
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@ If you want to skip the steps and get started quickly, select **Deploy to Cloudf
34
34
35
35
[](https://deploy.workers.cloudflare.com/?url=https://github.com/cloudflare/playwright/tree/main/packages/playwright-cloudflare/examples/todomvc)
36
36
37
-
Make sure you have the [browser binding](/browser-rendering/platform/wrangler/#bindings) configured in your `wrangler.toml` file:
37
+
Make sure you have the [browser binding](/browser-rendering/reference/wrangler/#bindings) configured in your `wrangler.toml` file:
38
38
39
39
:::note
40
40
To use the latest version of `@cloudflare/playwright`, your Worker configuration must include the `nodejs_compat` compatibility flag and a `compatibility_date` of 2025-09-15 or later. This change is necessary because the library's functionality requires the native `node.fs` API.
@@ -340,7 +340,7 @@ Notice that the session `478f4d7d-e943-40f6-a414-837d3736a1dc` has an active wor
340
340
]
341
341
```
342
342
343
-
Session `2be00a21-9fb6-4bb2-9861-8cd48e40e771` was closed explicitly with `browser.close()` by the client, while session `478f4d7d-e943-40f6-a414-837d3736a1dc` was closed due to reaching the maximum idle time (check [limits](/browser-rendering/platform/limits/)).
343
+
Session `2be00a21-9fb6-4bb2-9861-8cd48e40e771` was closed explicitly with `browser.close()` by the client, while session `478f4d7d-e943-40f6-a414-837d3736a1dc` was closed due to reaching the maximum idle time (check [limits](/browser-rendering/limits/)).
344
344
345
345
You should also be able to access this information in the dashboard, albeit with a slight delay.
346
346
@@ -362,7 +362,7 @@ You should also be able to access this information in the dashboard, albeit with
362
362
363
363
-`activeSessions` lists the IDs of the current open sessions
364
364
-`maxConcurrentSessions` defines how many browsers can be open at the same time
365
-
-`allowedBrowserAcquisitions` specifies if a new browser session can be opened according to the rate [limits](/browser-rendering/platform/limits/) in place
365
+
-`allowedBrowserAcquisitions` specifies if a new browser session can be opened according to the rate [limits](/browser-rendering/limits/) in place
366
366
-`timeUntilNextAllowedBrowserAcquisition` defines the waiting period before a new browser can be launched.
Copy file name to clipboardExpand all lines: src/content/docs/browser-rendering/puppeteer.mdx
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,7 @@ Our version is open sourced and can be found in [Cloudflare's fork of Puppeteer]
20
20
21
21
## Use Puppeteer in a Worker
22
22
23
-
Once the [browser binding](/browser-rendering/platform/wrangler/#bindings) is configured and the `@cloudflare/puppeteer` library is installed, Puppeteer can be used in a Worker:
23
+
Once the [browser binding](/browser-rendering/reference/wrangler/#bindings) is configured and the `@cloudflare/puppeteer` library is installed, Puppeteer can be used in a Worker:
24
24
25
25
<TypeScriptExample>
26
26
@@ -119,7 +119,7 @@ Notice that the session `478f4d7d-e943-40f6-a414-837d3736a1dc` has an active wor
119
119
]
120
120
```
121
121
122
-
Session `2be00a21-9fb6-4bb2-9861-8cd48e40e771` was closed explicitly with `browser.close()` by the client, while session `478f4d7d-e943-40f6-a414-837d3736a1dc` was closed due to reaching the maximum idle time (check [limits](/browser-rendering/platform/limits/)).
122
+
Session `2be00a21-9fb6-4bb2-9861-8cd48e40e771` was closed explicitly with `browser.close()` by the client, while session `478f4d7d-e943-40f6-a414-837d3736a1dc` was closed due to reaching the maximum idle time (check [limits](/browser-rendering/limits/)).
123
123
124
124
You should also be able to access this information in the dashboard, albeit with a slight delay.
125
125
@@ -141,7 +141,7 @@ You should also be able to access this information in the dashboard, albeit with
141
141
142
142
-`activeSessions` lists the IDs of the current open sessions
143
143
-`maxConcurrentSessions` defines how many browsers can be open at the same time
144
-
-`allowedBrowserAcquisitions` specifies if a new browser session can be opened according to the rate [limits](/browser-rendering/platform/limits/) in place
144
+
-`allowedBrowserAcquisitions` specifies if a new browser session can be opened according to the rate [limits](/browser-rendering/limits/) in place
145
145
-`timeUntilNextAllowedBrowserAcquisition` defines the waiting period before a new browser can be launched.
Copy file name to clipboardExpand all lines: src/content/docs/browser-rendering/reference/browser-close-reasons.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,7 @@ To find the reason that a browser closed:
17
17
18
18
2. Select the **Logs** tab.
19
19
20
-
Browser Rendering sessions are billed based on [usage](/browser-rendering/platform/pricing/). We do not charge for sessions that error due to underlying Browser Rendering infrastructure.
20
+
Browser Rendering sessions are billed based on [usage](/browser-rendering/pricing/). We do not charge for sessions that error due to underlying Browser Rendering infrastructure.
0 commit comments