Fetch rendered web content
litescrape.web.fetchFetch a public HTTP(S) page and return LLM-ready content
- Price
- $0.00015/successAt provider cost
- Success rate
- 73.1%Last 30 days · 21,047 calls
- Latency p50
- 7.8 sp95 28 s
- Last verified
- Sep 29, 2026Verified working
GEThttps://toolswitch.dev/v1/tools/litescrape.web.fetch?url=https%3A%2F%2Fexample.com&respond_with=markdownPreview- Uses platform quota
- Synchronous response
- Reads public data
Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
| Query parameters | ||||
url | string | Required | Public HTTP(S) URL to capture, 1-8,192 characters. Include http:// or https://; bare domains are rejected. The host must be public, on port 80 or 443, without embedded credentials. | https://example.com |
base | string | Optional | Resolve relative links against the requested URL (initial, default) or the final URL after redirects (final). | |
engine | string | Optional | auto (default; lightweight HTTP first, a browser when needed), browser, or curl (no JavaScript). | |
locale | string | Optional | Browser locale as a language tag, 2-64 characters. Defaults to the browser's own. | en-US |
no_gfm | string | Optional | true, false or table: disable GitHub-flavored Markdown, or only its tables. | |
preset | string | Optional | Option preset. Fills only the options the request leaves unset. | |
referer | string | Optional | HTTP(S) URL sent as the Referer. | https://example.com |
timeout | number | Optional | Optional budget for the entire request in seconds, measured from gateway receipt until the response is ready to send. Includes admission, queueing and settlement. Must be greater than 0 and at most 90. On expiry, the call is not billed and returns 503 request_deadline_exceeded with retryable=true and a request ID. Omit to retain the standard server deadline. | |
max_tokens | integer | Optional | Integer 500-10,000,000. Trim content to this many tokens. | |
robots_txt | string | Optional | User agent, 1-256 characters, to check against the site's robots.txt; disallowed URLs are rejected. | MyBot |
user_agent | string | Optional | User-Agent for the page request, 1-1,024 characters without control characters. Defaults to the browser's own. | |
with_iframe | string | Optional | true, false or quoted: include iframe content before extraction. | |
page_timeout | integer | Optional | Seconds from 1 through 180 for page loading and browser operations. Cannot extend the total request budget set by timeout. | 30 |
respond_with | string | Optional | Output format: content (default; main content as Markdown, or the whole page when extraction keeps too little), markdown (whole page as Markdown), html, text, frontmatter (content plus front matter), or a '+' combination such as markdown+frontmatter. For screenshots use /api/web/screenshot. | markdown |
retain_links | string | Optional | Links to keep: all (default), text (link text only), none, or gpt-oss (citation format with a links summary). | |
retain_media | string | Optional | How video, audio and embedded video appear: none, text, link (default), image or html. | |
token_budget | integer | Optional | Integer 1-10,000,000. Reject the page when its token count exceeds the budget. | |
retain_images | string | Optional | Images to keep: all (default), alt (alt text only) or none. | alt |
remove_overlay | boolean | Optional | Remove modal and cookie-banner overlays from the page. | |
respond_timing | string | Optional | Page readiness condition to reach before responding. | network-idle |
remove_selector | string | Optional | CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors. | nav, footer |
target_selector | string | Optional | CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected. | article |
with_shadow_dom | boolean | Optional | Include open shadow DOM content before extraction. | |
detach_invisibles | boolean | Optional | Drop display:none elements from the page. | |
keep_img_data_url | boolean | Optional | Keep inline data: images in Markdown. | |
markdown_chunking | string | Optional | true, h1-h5, structured or s1-s5: split the Markdown and return chunks. | |
wait_for_selector | string | Optional | CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors. | main |
assert_status_code | integer | Optional | Expected origin HTTP status, 100-599. A different status is rejected; otherwise a rendered error page is a successful capture. | 200 |
with_links_summary | string | Optional | true, false or all: add a links list to the response. | |
with_images_summary | boolean | Optional | Add an images list to the response. | |
- Query parameters
urlstringRequiredPublic HTTP(S) URL to capture, 1-8,192 characters. Include http:// or https://; bare domains are rejected. The host must be public, on port 80 or 443, without embedded credentials.
Example:
https://example.combasestringOptionalResolve relative links against the requested URL (initial, default) or the final URL after redirects (final).
enginestringOptionalauto (default; lightweight HTTP first, a browser when needed), browser, or curl (no JavaScript).
localestringOptionalBrowser locale as a language tag, 2-64 characters. Defaults to the browser's own.
Example:
en-USno_gfmstringOptionaltrue, false or table: disable GitHub-flavored Markdown, or only its tables.
presetstringOptionalOption preset. Fills only the options the request leaves unset.
refererstringOptionalHTTP(S) URL sent as the Referer.
Example:
https://example.comtimeoutnumberOptionalOptional budget for the entire request in seconds, measured from gateway receipt until the response is ready to send. Includes admission, queueing and settlement. Must be greater than 0 and at most 90. On expiry, the call is not billed and returns 503 request_deadline_exceeded with retryable=true and a request ID. Omit to retain the standard server deadline.
max_tokensintegerOptionalInteger 500-10,000,000. Trim content to this many tokens.
robots_txtstringOptionalUser agent, 1-256 characters, to check against the site's robots.txt; disallowed URLs are rejected.
Example:
MyBotuser_agentstringOptionalUser-Agent for the page request, 1-1,024 characters without control characters. Defaults to the browser's own.
with_iframestringOptionaltrue, false or quoted: include iframe content before extraction.
page_timeoutintegerOptionalSeconds from 1 through 180 for page loading and browser operations. Cannot extend the total request budget set by timeout.
Example:
30respond_withstringOptionalOutput format: content (default; main content as Markdown, or the whole page when extraction keeps too little), markdown (whole page as Markdown), html, text, frontmatter (content plus front matter), or a '+' combination such as markdown+frontmatter. For screenshots use /api/web/screenshot.
Example:
markdownretain_linksstringOptionalLinks to keep: all (default), text (link text only), none, or gpt-oss (citation format with a links summary).
retain_mediastringOptionalHow video, audio and embedded video appear: none, text, link (default), image or html.
token_budgetintegerOptionalInteger 1-10,000,000. Reject the page when its token count exceeds the budget.
retain_imagesstringOptionalImages to keep: all (default), alt (alt text only) or none.
Example:
altremove_overlaybooleanOptionalRemove modal and cookie-banner overlays from the page.
respond_timingstringOptionalPage readiness condition to reach before responding.
Example:
network-idleremove_selectorstringOptionalCSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.
Example:
nav, footertarget_selectorstringOptionalCSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.
Example:
articlewith_shadow_dombooleanOptionalInclude open shadow DOM content before extraction.
detach_invisiblesbooleanOptionalDrop display:none elements from the page.
keep_img_data_urlbooleanOptionalKeep inline data: images in Markdown.
markdown_chunkingstringOptionaltrue, h1-h5, structured or s1-s5: split the Markdown and return chunks.
wait_for_selectorstringOptionalCSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.
Example:
mainassert_status_codeintegerOptionalExpected origin HTTP status, 100-599. A different status is rejected; otherwise a rendered error page is a successful capture.
Example:
200with_links_summarystringOptionaltrue, false or all: add a links list to the response.
with_images_summarybooleanOptionalAdd an images list to the response.
Code samples
Replace $TOOLSWITCH_KEY with the key you created in the console.
curl -X GET 'https://toolswitch.dev/v1/tools/litescrape.web.fetch?url=https%3A%2F%2Fexample.com&respond_with=markdown' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY"import os
import requests
response = requests.request(
"GET",
"https://toolswitch.dev/v1/tools/litescrape.web.fetch?url=https%3A%2F%2Fexample.com&respond_with=markdown",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/litescrape.web.fetch?url=https%3A%2F%2Fexample.com&respond_with=markdown", {
method: "GET",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
},
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());This gateway API is in preview; its URL and authentication may change. The example parameters are sample data. Calls are billed at $0.00015/success, including the service fee.