BazaarLinkBazaarLink
Sign in
DocsAPI ReferenceSDK ReferenceAgentic UsageAI Skills
Web Search

Crawl webpages

Explore a website link graph from a root URL and extract content from successful pages. Authenticate with a Bearer API key, or pass api_key in the JSON body as a compatibility fallback; both https://api.bazaarlink.ai/v1 and https://bazaarlink.ai/api/v1 are supported. Unknown fields are ignored. The response includes successful pages, response_time, usage.credits, our additive usage.cost (credits multiplied by the admin-set per-credit price), and our request_id. Tavily accepts timeout values from 10 to 150 seconds, but BazaarLink's effective maximum is 90 seconds; values above 90 are lowered to 90 so the call stays below the 100-second edge limit. Crawl credits are mapping cost plus extraction cost: 10 basic pages cost 1 + 2 = 3 credits; advanced extraction doubles the extraction part, and instructions double the mapping part. Failed pages are free. Actual credits draw from the shared daily free allowance; if the estimate from limit exceeds the remaining allowance, the excess is billed from balance, or the call returns 432 without balance and suggests lowering limit. Credits are mapping cost plus extraction cost: 10 basic pages cost 1 + 2 = 3 credits; advanced extraction doubles the extraction part, and instructions double the mapping part. Failed pages are free. Actual credits draw from the shared daily free allowance; if the estimate from limit exceeds the remaining allowance, the excess is billed from balance, or the call returns 432 without balance and suggests lowering limit. SDK examples; keep the key in an environment variable or another secure server-side setting. Python: from tavily import TavilyClient client = TavilyClient(api_key="...", api_base_url="https://api.bazaarlink.ai/v1") response = client.crawl("docs.tavily.com", instructions="Find Python SDK pages") JavaScript: import { tavily } from "@tavily/core" const tvly = tavily({ apiKey: process.env.BAZAARLINK_API_KEY, apiBaseURL: "https://api.bazaarlink.ai/v1" }) const response = await tvly.crawl("docs.tavily.com", { instructions: "Find Python SDK pages" }) LangChain (crawl only): from langchain_tavily import TavilyCrawl tool = TavilyCrawl(api_key="...", api_base_url="https://api.bazaarlink.ai/v1") response = tool.invoke({"url": "docs.tavily.com", "instructions": "Find Python SDK pages"})

POST/v1/crawl

Authorizations

Authorizationrequired
string · header

API key as bearer token in the Authorization header.

Body

urlrequired
string

Root URL for the crawl; the scheme is optional, for example docs.tavily.com.

required; scheme optional
Example: "docs.tavily.com"
instructions
string

Natural-language crawl instructions. When present, chunks_per_source is available and the mapping part costs 2 credits per 10 successful pages.

Example: "Find Python SDK pages"
chunks_per_source
integer

Maximum short content chunks per source; available only with instructions, from 1 to 5, default 3.

1-5; only with instructions; default: 3
Example: 3
max_depth
integer

Maximum crawl depth, 1 to 5, default 1.

1-5; default: 1
Example: 1
max_breadth
integer

Maximum links followed per page at each level, 1 to 500, default 20.

1-500; default: 20
Example: 20
limit
integer

Total links processed before stopping; minimum 1, default 50.

minimum: 1; default: 50
Example: 50
select_paths
string[]

path selection regex patterns; at most 50 entries, with each pattern limited to 200 characters.

max 50 entries; max 200 characters per regex
Example: ["^/docs/.*"]
select_domains
string[]

domain selection regex patterns; at most 50 entries, with each pattern limited to 200 characters.

max 50 entries; max 200 characters per regex
Example: ["^docs\.example\.com$"]
exclude_paths
string[]

path exclusion regex patterns; at most 50 entries, with each pattern limited to 200 characters.

max 50 entries; max 200 characters per regex
Example: ["^/private/.*"]
exclude_domains
string[]

domain exclusion regex patterns; at most 50 entries, with each pattern limited to 200 characters.

max 50 entries; max 200 characters per regex
Example: ["^private\.example\.com$"]
allow_external
boolean

Whether to include external-domain links in the final results, default true.

default: true
Example: true
include_images
boolean

Whether to include images extracted from pages, default false.

default: false
Example: false
extract_depth
string

Extraction depth. advanced handles more tables and embedded content and doubles the extraction part of credits per 5 successful pages.

default: basic
basicadvanced
Example: "basic"
format
string

Format of extracted page content: markdown or plain text, default markdown.

default: markdown
markdowntext
Example: "markdown"
include_favicon
boolean

Whether to include a favicon URL for each result, default false.

default: false
Example: false
timeout
number

Seconds to wait for the crawl. Tavily's range is 10-150, but BazaarLink's effective maximum is 90 seconds; values above 90 are lowered to 90.

Tavily: 10-150; BazaarLink default/effective maximum: 90 seconds; values above 90 are lowered to 90
Example: 90
include_usage
boolean

Whether to include usage in the response, default false; when included it shows credits and usage.cost.

default: false
Example: false
POST /v1/crawl
curl https://api.bazaarlink.ai/v1/crawl   -H "Authorization: Bearer $BAZAARLINK_API_KEY"   -H "Content-Type: application/json"   -d '{
    "url": "docs.tavily.com",
    "instructions": "Find Python SDK pages",
    "limit": 20,
    "timeout": 90,
    "include_usage": true
  }'
Response examples

Crawl completed. results contains successful pages; usage.credits is the actual credit charge and usage.cost is the customer price using the admin-set per-credit rate.

{
  "base_url": "docs.tavily.com",
  "results": [
    {
      "url": "https://docs.tavily.com/welcome",
      "raw_content": "Welcome to the docs",
      "favicon": "https://docs.tavily.com/favicon.ico"
    }
  ],
  "response_time": 1.23,
  "usage": {
    "credits": 3,
    "cost": 0.03
  },
  "request_id": "crawl_123e4567-e89b-12d3-a456-426614174111"
}
Support
Support
Hi! How can we help you?
Send a message and we'll get back to you soon.