POST /compat/firecrawl/v2/map
Firecrawl's `POST /v2/map`, served by vision map. `links` are objects with `url`, `title` and `description`. `limit` above 5000 is treated as 5000. Bills one `vision.page`.

Authentication

Bearer Token (b3os_sk_ API key or b3os_pat_ token)

Request Body required

application/json
url string (uri) REQUIRED
search string
sitemap string
Enum: skip, include, only
includeSubdomains boolean
ignoreQueryParameters boolean
ignoreCache boolean
limit integer
Above 5000 it is treated as 5000.
timeout integer
location object
country string
ISO 3166-1 alpha-2 code. B3OS emulates the language and time zone; it has no per-country proxies.
languages string[]
Array of: string
auditMetadata object
Accepted and ignored (the Firecrawl SDKs send it).
threatProtection object
Not supported by B3OS: setting it returns `400` with code `unsupported_option`.
integration string
Accepted and ignored (the Firecrawl SDKs send it).
origin string
Accepted and ignored (the Firecrawl SDKs send it).

Responses

200 The URLs found.
application/json
success boolean REQUIRED
Enum: true
links object[] REQUIRED
Array of:
url string (uri) REQUIRED
title string
description string
400 The body failed validation, uses an unsupported option, or a URL is invalid (`invalid_request`, `unsupported_option`, `invalid_url`).
401 Missing or invalid B3OS key (`unauthorized`). Firecrawl `fc-` keys are not accepted.
402 No credits left or the key's spend cap is reached (`credits_exhausted`, `spend_cap_exceeded`).
403 The URL is refused by the egress guard or robots.txt, or the key lacks a scope (`egress_denied`, `robots_disallowed`, `forbidden`).
429 A rate or concurrency limit applies (`rate_limited`, `concurrency_limited`).
500 Something failed inside B3OS (`internal`).
502 The site could not be reached or loaded (`upstream_unreachable`, `navigation_failed`).
503 The node or vision is unavailable (`node_unavailable`, `product_unavailable`).
curl -X POST 'https://beta-api.b3os.org/compat/firecrawl/v2/map' \  -H 'Authorization: Bearer YOUR_API_TOKEN' \  -H 'Content-Type: application/json' \  -d '{  "url": "https://docs.example.com",  "search": "authentication",  "limit": 100}'
const response = await fetch('https://beta-api.b3os.org/compat/firecrawl/v2/map', {  method: 'POST',  headers: {      "Authorization": "Bearer YOUR_API_TOKEN",      "Content-Type": "application/json"  },  body: JSON.stringify({    "url": "https://docs.example.com",    "search": "authentication",    "limit": 100  })});const data = await response.json();console.log(data);
import requestsheaders = {    'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.post('https://beta-api.b3os.org/compat/firecrawl/v2/map', headers=headers, json={  "url": "https://docs.example.com",  "search": "authentication",  "limit": 100})print(response.json())
200 Response
{  "success": true,  "links": [    {      "url": "https://docs.example.com/auth",      "title": "Authentication"    }  ]}
Ask a question... ⌘I