Api Endpoint

WebLens

Crawl a site and get clean markdown for every page, in one call. Same-host BFS with depth and page-budget limits, robots.txt honoured by default. $0.0015 per requested page (1-25).

Open interactive test console

Offering

Provider
api.weblens.dev
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Web Search Research
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://api.weblens.dev/crawl
MIME type
Not provided
First seen
2026-10-16T01:50:24.663Z
Last seen
Tags
crawling, scraping

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.015 USDC
Atomic price: 15000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 2
0.015 USDC
Atomic price: 15000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "15000",
    "payTo": "0x5f71Ce4135004b5fa4dF81014721598E1C7c5AF8"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "15000",
    "payTo": "34sd6wPrmoR9UG9rUgYAFtcWYSVzqDNsvH9VkCkycUeb"
  }
]

Observed health

Status
Healthy
Latest latency
250 ms
Average latency
456 ms
HTTP status
204
Last checked
Reachability
100% over 13 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "body": {
      "properties": {
        "exclude": {
          "default": [],
          "description": "Skip URLs whose path+query contains one of these",
          "items": {
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          },
          "maxItems": 20,
          "type": "array"
        },
        "include": {
          "default": [],
          "description": "Only crawl URLs whose path+query contains one of these",
          "items": {
            "maxLength": 200,
            "minLength": 1,
            "type": "string"
          },
          "maxItems": 20,
          "type": "array"
        },
        "limit": {
          "default": 10,
          "description": "Page budget — you are charged per requested page",
          "example": 10,
          "maximum": 25,
          "minimum": 1,
          "type": "number"
        },
        "maxChars": {
          "default": 8000,
          "description": "Per-page content character cap",
          "maximum": 50000,
          "minimum": 500,
          "type": "number"
        },
        "maxDepth": {
          "default": 2,
          "description": "Link depth from the start URL (0 = start page only)",
          "example": 2,
          "maximum": 3,
          "minimum": 0,
          "type": "number"
        },
        "respectRobots": {
          "default": true,
          "description": "Honour robots.txt (default true; disable only for sites you control)",
          "type": "boolean"
        },
        "timeout": {
          "default": 10000,
          "description": "Request timeout in milliseconds",
          "maximum": 30000,
          "minimum": 5000,
          "type": "number"
        },
        "url": {
          "description": "The URL to process",
          "example": "https://example.com",
          "format": "uri",
          "type": "string"
        }
      },
      "required": [
        "url"
      ],
      "type": "object"
    },
    "bodyType": {
      "enum": [
        "json",
        "form-data",
        "text"
      ],
      "type": "string"
    },
    "method": {
      "enum": [
        "POST"
      ],
      "type": "string"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "properties": {
            "exclude": {
              "default": [],
              "description": "Skip URLs whose path+query contains one of these",
              "items": {
                "maxLength": 200,
                "minLength": 1,
                "type": "string"
              },
              "maxItems": 20,
              "type": "array"
            },
            "include": {
              "default": [],
              "description": "Only crawl URLs whose path+query contains one of these",
              "items": {
                "maxLength": 200,
                "minLength": 1,
                "type": "string"
              },
              "maxItems": 20,
              "type": "array"
            },
            "limit": {
              "default": 10,
              "description": "Page budget — you are charged per requested page",
              "example": 10,
              "maximum": 25,
              "minimum": 1,
              "type": "number"
            },
            "maxChars": {
              "default": 8000,
              "description": "Per-page content character cap",
              "maximum": 50000,
              "minimum": 500,
              "type": "number"
            },
            "maxDepth": {
              "default": 2,
              "description": "Link depth from the start URL (0 = start page only)",
              "example": 2,
              "maximum": 3,
              "minimum": 0,
              "type": "number"
            },
            "respectRobots": {
              "default": true,
              "description": "Honour robots.txt (default true; disable only for sites you control)",
              "type": "boolean"
            },
            "timeout": {
              "default": 10000,
              "description": "Request timeout in milliseconds",
              "maximum": 30000,
              "minimum": 5000,
              "type": "number"
            },
            "url": {
              "description": "The URL to process",
              "example": "https://example.com",
              "format": "uri",
              "type": "string"
            }
          },
          "required": [
            "url"
          ],
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "crawledAt": {
              "type": "string"
            },
            "pages": {
              "description": "Per-page results with url, depth, status, title, content, truncated, error",
              "items": {
                "properties": {
                  "content": {
                    "description": "Page as clean markdown",
                    "type": "string"
                  },
                  "depth": {
                    "type": "integer"
                  },
                  "error": {
                    "type": "string"
                  },
                  "status": {
                    "enum": [
                      "success",
                      "failed"
                    ],
                    "type": "string"
                  },
                  "title": {
                    "type": "string"
                  },
                  "truncated": {
                    "type": "boolean"
                  },
                  "url": {
                    "type": "string"
                  }
                },
                "type": "object"
              },
              "type": "array"
            },
            "requestId": {
              "type": "string"
            },
            "summary": {
              "description": "crawled, successful, failed, discovered, limit, maxDepth, robotsRespected",
              "properties": {
                "crawled": {
                  "type": "integer"
                },
                "discovered": {
                  "type": "integer"
                },
                "failed": {
                  "type": "integer"
                },
                "limit": {
                  "type": "integer"
                },
                "maxDepth": {
                  "type": "integer"
                },
                "robotsRespected": {
                  "type": "boolean"
                },
                "successful": {
                  "type": "integer"
                }
              },
              "type": "object"
            },
            "url": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}