WebScraping.AI · OpenAPI Overlay 1.0.0

API Evangelist enhancements for WebScraping.AI

12 actions 12 updates update extends openapi/webscraping-ai-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for WebScraping.AI's API. It is a proposal applied on top of the contract, not a document WebScraping.AI publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-mcp-toolx-apievangelist-notex-credit-costx-apievangelist-profilex-apievangelist-artifactsx-agent-notesx-apievangelist-warningx-apievangelist-auth-failure-status

Targets 11

$.info
$.servers
$.components.securitySchemes.api_key
$.paths['/ai/question'].get
$.paths['/ai/fields'].get
$.paths['/html'].get
$.paths['/text'].get
$.paths['/selected'].get
$.paths['/selected-multiple'].get
$.paths['/account'].get
$.components.schemas.Error

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for WebScraping.AI
  version: 1.0.0
extends: openapi/webscraping-ai-openapi.yml
x-generated: '2026-08-09'
x-method: generated
x-source: >-
  Derived from the provider's published OpenAPI 3.1.0 (https://webscraping.ai/openapi.yml) plus
  the artifacts in this repository. Applies API Evangelist annotations only; the harvested spec
  is never mutated.
actions:
- target: $.info
  update:
    x-apievangelist-profile: https://apis.io/provider/webscraping-ai/
    x-apievangelist-artifacts:
      authentication: authentication/webscraping-ai-authentication.yml
      conventions: conventions/webscraping-ai-conventions.yml
      errors: errors/webscraping-ai-problem-types.yml
      lifecycle: lifecycle/webscraping-ai-lifecycle.yml
      rate_limits: rate-limits/webscraping-ai-rate-limits.yml
      plans: plans/webscraping-ai-plans.yml
      packages: packages/webscraping-ai-packages.yml
      mcp: mcp/webscraping-ai-mcp.yml
      tool_crosswalk: mcp/webscraping-ai-tool-crosswalk.yml
      data_model: data-model/webscraping-ai-data-model.yml
      sandbox: sandbox/webscraping-ai-sandbox.yml
      cli: cli/webscraping-ai-cli.yml
      conformance: conformance/webscraping-ai-conformance.yml
- target: $.info
  update:
    x-agent-notes:
      surface: read-only
      idempotent: true
      idempotency-basis: >-
        Every published operation is an HTTP GET; there is no state-changing operation and no
        idempotency-key contract is required.
      retry-safe-statuses: [429, 500, 504]
      billing-on-failure: not-charged
      concurrency-limited: true
      concurrency-observability: GET /account -> remaining_concurrency
- target: $.servers
  update:
  - url: https://api.webscraping.ai
    description: Production REST API (the only host; no sandbox environment exists)
- target: $.components.securitySchemes.api_key
  update:
    x-apievangelist-warning: >-
      The API key is carried in the query string, so it is exposed to server logs, proxies,
      browser history and Referer headers. Prefer a server-side proxy for any client-side use.
    x-apievangelist-auth-failure-status: 403
- target: $.paths['/ai/question'].get
  update:
    x-mcp-tool: webscraping_ai_question
    x-credit-cost: 'base cost + 5'
- target: $.paths['/ai/fields'].get
  update:
    x-mcp-tool: webscraping_ai_fields
    x-credit-cost: 'base cost + 5'
    x-apievangelist-note: >-
      The response shape is defined by the caller's `fields` argument and therefore cannot be
      typed from the specification.
- target: $.paths['/html'].get
  update:
    x-mcp-tool: webscraping_ai_html
- target: $.paths['/text'].get
  update:
    x-mcp-tool: webscraping_ai_text
- target: $.paths['/selected'].get
  update:
    x-mcp-tool: webscraping_ai_selected
- target: $.paths['/selected-multiple'].get
  update:
    x-mcp-tool: webscraping_ai_selected_multiple
- target: $.paths['/account'].get
  update:
    x-mcp-tool: webscraping_ai_account
    x-apievangelist-note: >-
      The only operation exposing account state; poll it for remaining_concurrency before
      scaling parallel requests, since no rate-limit headers are returned.
- target: $.components.schemas.Error
  update:
    x-apievangelist-note: >-
      Two-layer error model — the HTTP status describes the scraping request while
      status_code/status_message describe the target website. A 500 usually means the target
      site failed, not the API.