I want to use the Web Scraper service on Fast Marketplace.
## Setup (skip if you already have Fast Marketplace set up)
1. Open the marketplace skill: https://marketplace.fast.xyz/skill.md
2. Fund a Fast wallet on mainnet.
3. Provide start URLs and a JavaScript pageFunction that extracts the fields you need.
4. Keep the returned job token and poll the marketplace job route for completion.
## Available Endpoints
### Crawl Pages ($0.0001 USDC)
curl -X POST "https://api.marketplace.fast.xyz/api/apify-web/crawl-pages" \
-H "Content-Type: application/json" \
-d '{
"startUrls": [
{
"url": "https://example.com/products"
}
],
"linkSelector": "a.product-link",
"pageFunction": "async function pageFunction(context) { const { request, page } = context; return { url: request.url, title: await page.title() }; }",
"maxCrawlPages": 25
}'
Use this when you need JavaScript rendering or a custom extraction function rather than a prebuilt site-specific scraper.
### Extract Page ($0.0001 USDC)
curl -X POST "https://api.marketplace.fast.xyz/api/apify-web/extract-page" \
-H "Content-Type: application/json" \
-d '{
"startUrls": [
{
"url": "https://example.com/products/widget"
}
],
"pageFunction": "async function pageFunction(context) { const { request, page } = context; return { url: request.url, title: await page.title(), price: await page.locator('.price').textContent() }; }",
"maxCrawlPages": 1
}'
Use this when you want rendered extraction from a small set of known pages rather than a broader crawl.
For paid endpoints: the first call returns 402. Authorize payment with your Fast wallet and retry with the payment signature header.Have a request?