← APIs / AgentBodega
Verified

AgentBodega

Pay-per-call agent utilities: x402 endpoint inspection, web search and answers, social and public-data catalogues, and a directory of payable routes.

toolsfederated
Price per request
$0.01
About

AgentBodega publishes an x402 manifest and a matching OpenAPI document, so every route it sells carries a request schema with named fields, types, defaults and required markers. Apiosk resells those routes: the treasury settles the provider's own x402 in USDC on Base and the buyer is charged the list price plus the Apiosk fee.

Base URL
https://gateway.apiosk.com/agentbodega
Technical Specs
Auth MethodNone (x402 payment proof only)
Response FormatJSON
Endpoints71
Endpoints
MethodPathDescriptionCost
POST /api/artifacts Create a short-lived signed hosted artifact for agents: text, JSON, SVG badge, or redirect URL. No database required for small artifacts.
$0.01 default
View details
POST /api/audit/agent-batch Run agent-readiness checks across up to five URLs in one paid call and return comparable scores, failures, and concrete next steps.
$0.06 default
View details
POST /api/audit/agent-launch Audit whether a site or API is ready for AI agents: discoverability, markdown access, OpenAPI, MCP, Agent Skills, x402 commerce, and concrete fix instructions.
$0.03 default
View details
POST /api/badge/agent-ready Generate an agent-readiness score and SVG badge for a URL using the same checks as the launch audit.
$0.01 default
View details
POST /api/check/agent-commerce Check whether a site exposes machine-payable commerce metadata for x402, MPP-style OpenAPI payment hints, UCP, or ACP.
$0.01 default
View details
POST /api/check/agent-discoverability Check robots.txt, sitemap, Link headers, markdown access, llms.txt, and AI content-signal hints for agent-facing discoverability.
$0.01 default
View details
POST /api/check/agent-protocols Check OpenAPI, API catalog, MCP server cards, Agent Skills, auth.md, OAuth discovery, OAuth protected-resource metadata, A2A cards, and WebMCP hints.
$0.02 default
View details
POST /api/check/domain Check a domain's launch basics: DNS resolution, HTTPS reachability, MX, SPF, DMARC, CAA, and optional DKIM selectors.
$0.02 default
View details
POST /api/cloud/status/bundle Check up to five cloud service/location units, or a curated cloud-provider bundle, without dumping every healthy cloud service.
$0.01 default
View details
POST /api/cloud/status/check Check one public AWS, Google Cloud, Azure, DigitalOcean, or Linode service/location status source and return a terse agent-ready verdict.
$0.0057 default
View details
POST /api/cloud/status/stack Check up to twelve caller-selected cloud service/location units for a stack-wide public status verdict.
$0.01 default
View details
POST /api/cloud/status/summary Summarize public broad-impact incidents for AWS, Google Cloud, Azure, DigitalOcean, Linode, or all providers before an agent retries cloud work.
$0.01 default
View details
POST /api/developer/jwt/inspect Decode one compact JWT without requiring a secret and return normalized header, claim timing, issuer and audience checks, signature presence, warnings, and safe debugging guidance for agent and API workflows.
$0.0057 default
View details
POST /api/developer/webhook/debug Inspect one webhook delivery payload with normalized headers, JSON parsing, safe redaction, timestamp replay-window checks, optional HMAC signature verification, warnings, and compact debugging guidance.
$0.0057 default
View details
POST /api/documents/any-to-markdown Convert one public URL into cleaned markdown with page metadata, normalized links, byte limits, truncation flags, and text statistics for RAG, notes, and agent content workflows.
$0.01 default
View details
POST /api/documents/rag-prep Prepare one public URL or raw text payload for retrieval workflows with cleaned text, stable chunk IDs, overlap-aware chunks, token estimates, keyword hints, optional entity hints, JSONL or markdown formatting, and strict size caps.
$0.01 default
View details
POST /api/inspect/x402 Inspect a URL for x402 payment challenges, payable metadata, discovery links, OpenAPI, MCP, Agent Skills, and Bazaar-readiness signals.
$0.0057 default
View details
POST /api/media/image/convert Create a short-lived signed download URL that converts one public image into JPG, PNG, WebP, or AVIF with capped size, fit, quality, and TTL controls. Useful for HEIC-to-JPG-style agent workflows without exposing backend media infrastructure.
$0.01 default
View details
POST /api/name/check Check one launch-name slug against selected public domain TLDs and GitHub handles, returning available, taken, invalid, or unknown with evidence and confidence instead of guessing.
$0.0057 default
View details
POST /api/package/x402-directory Build a compact listing payload for x402 directories: service name, discovery links, payment metadata, endpoint counts, tags, and readiness warnings.
$0.01 default
View details
POST /api/prediction-markets/listings Return fresh public prediction-market listings sorted by volume, liquidity, newest, or ending soon with capped rows, normalized outcomes, category labels, and no trade execution.
$0.01 default
View details
POST /api/prediction-markets/search Search active or historical public prediction markets by keyword, category, venue, liquidity, volume, and end date; returns normalized read-only market rows with outcomes, prices, and source-neutral feed metadata.
$0.01 default
View details
POST /api/public-data/california-highway-traffic Return live California highway speed snapshots grouped by road and direction, with optional incident and sensor detail, without exposing collection endpoints.
$0.0057 default
View details
POST /api/public-data/catalog Return AgentBodega's Public Data department offerings grouped by category with full input/output schemas, prices, route paths, and workflow guidance.
$0.0057 default
View details
POST /api/public-data/classified-listing-search Search public classified listings by market area, category, query, and common marketplace filters; returns normalized posting titles, prices, locations, dates, and ids without exposing collection URLs.
$0.0057 default
View details
POST /api/public-data/home-comparable-sales Return best-effort recent sold comparable sales for a region or lat/lon search, with normalized property attributes and no source links.
$0.03 default
View details
POST /api/public-data/hospital-quality-rating Look up public hospital quality metadata by facility id or hospital name/state, including overall star rating and selected measure rows.
$0.0057 default
View details
POST /api/public-data/news-briefing/summary Return a compact rolling public-news briefing with ranked items, titles, and summaries; supports a small text filter and capped item count for fast agent context.
$0.0057 default
View details
POST /api/public-data/news-headlines/search Search a managed public news index by topic, publisher label, lookback window, keyword query, sentiment bounds, and sort order; returns normalized headline rows with publisher article URLs.
$0.0057 default
View details
POST /api/public-data/news/morning-briefing Build a source-neutral morning briefing from managed public news signals, grouped into agent-ready sections such as global news, markets, AI/technology, crypto, and science with citations and caps.
$0.03 default
View details
POST /api/public-data/outdoor-recreation-availability Check live public recreation availability for campgrounds, campsites, permits, lotteries, tours, and timed-entry resources over a bounded date range.
$0.0057 default
View details
POST /api/public-data/rental-listing-search Find public rental listings by market resource id, rental category, price, bedrooms, bathrooms, and result limit; returns normalized rental/building records without collection links.
$0.0057 default
View details
POST /api/public-data/school-quality-rating Look up public school rating data by school name/city/state, returning rating, grades, enrollment, district, address, and ids.
$0.0057 default
View details
POST /api/public-data/us-weather-forecast Return a US weather forecast for a point by latitude/longitude, ZIP code, or city/state, including current observation, hourly forecast, multi-day periods, alerts, and grid metadata.
$0.0057 default
View details
POST /api/public-data/volunteer-opportunity-search Search public volunteer opportunities by query, cause, remote/local mode, lat/lon, radius, page, and result limit.
$0.0057 default
View details
POST /api/real-estate/intelligence Turn up to 100 current public home or rental listings into a deterministic market report with exact ZIP and min/max price, bedroom, bathroom, and square-foot filters; price bands; value-position quadrants; inventory signals; cohort context; five decision lenses; anomaly review flags; a ranked shortlist; confidence; limitations; and optional Markdown. This report-only product returns aggregates and shortlist evidence, not every analyzed row. Requires market or zipCode and at least five usable priced listings; failed or insufficient runs are not settled.
$0.86 default
View details
POST /api/real-estate/intelligence/bundle Return the complete $0.75 real-estate intelligence report plus every normalized listing that passed the requested exact ZIP and min/max price, bedroom, bathroom, square-foot, property-type, and freshness filters, capped at 100 rows. The fixed $0.85 bundle costs less than purchasing the report and enough separate 20-row listing-search calls, while the paid route itself controls evidence access so a request flag cannot obtain bundle data at the report-only price.
$0.98 default
View details
POST /api/real-estate/listings/search Search current public home and rental listings by city, neighborhood, exact ZIP, listing type, price range, bedroom range, bathroom range, square footage, amenities, URL, address, or property id. Search mode requires market or zipCode; URL mode requires searchUrls; lookup mode requires addresses, zpids, or propertyIds. Advertised filters are rechecked against normalized rows before results are returned.
$0.06 default
View details
POST /api/search/link-preview Fetch one public URL and return compact source-neutral preview metadata: title, description, canonical URL, site name, type, image URL when present, and which HTML signals supplied each field.
$0.0057 default
View details
POST /api/social-media/catalog Return AgentBodega's Social Media department: configured public social/video data routes plus available and staged coverage families for social, creator, video, audio, ad-library, and UGC research products.
$0.0057 default
View details
POST /api/social-media/x/tweet Look up one public X/Twitter post by numeric id or post URL and return normalized text, author, created time, language, and public engagement metrics.
$0.02 default
View details
POST /api/social-media/x/tweet-search Search public X/Twitter posts with a raw query or bounded structured filters such as words, exact phrase, hashtags, author, mention target, engagement thresholds, and date range.
$0.07 default
View details
POST /api/social-media/x/user-profile Look up a public X/Twitter profile by username and return normalized account metadata, public metrics, verification state, bio, and profile image metadata.
$0.03 default
View details
POST /api/social-media/x/user-timeline Return recent public posts for a username with normalized post ids, text, author metadata, created time, language, and public engagement metrics.
$0.06 default
View details
POST /api/status/anthropic Check Anthropic Claude's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/bambulab Check Bambu Lab's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/bitbucket Check Bitbucket's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/bundle Check a bundle of official status sources so an agent can decide whether to deploy, retry, or wait before blaming its own code.
$0.01 default
View details
POST /api/status/check Check one official status page or status API for GitHub, GitLab, deploy platforms, package registries, databases, auth, and AI APIs.
$0.0057 default
View details
POST /api/status/clerk Check Clerk's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/cloudflare Check Cloudflare's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/coinbase Check Coinbase's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/convex Check Convex's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/cursor Check Cursor's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/fly Check Fly.io's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/github Check GitHub's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/gitlab Check GitLab.com's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/netlify Check Netlify's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/npm Check npm's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/openai Check OpenAI's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/railway Check Railway's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/render Check Render's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/ring Check Ring's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/stack Check a caller-selected stack of official status sources at the stack-bundle price. Repeated stack layers are rejected before payment.
$0.01 default
View details
POST /api/status/supabase Check Supabase's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/status/vercel Check Vercel's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.
$0.0057 default
View details
POST /api/web/answer Answer a public-web research question with cited source URLs, concise extractive evidence, confidence, source fetch status, and strict search/source caps.
$0.01 default
View details
POST /api/web/fetch Fetch one public URL and return normalized page metadata, cleaned text, markdown, links, status, content type, and extraction limits for agent workflows.
$0.0057 default
View details
POST /api/web/research-brief Bundle public web search, capped source fetching, extractive summarization, and citations into one structured research brief for agents that need an answer plus supporting sources.
$0.03 default
View details
POST /api/web/search Search the public web and return normalized, source-neutral results with titles, URLs, domains, snippets, freshness controls, and strict result caps for agent research workflows.
$0.0057 default
View details
POST /api/web/similar Find related pages, substitutes, competitor pages, or supporting sources from a topic, task, or public seed URL, with normalized source-neutral results and strict search/fetch caps.
$0.0057 default
View details
Endpoint documentation
POST/api/artifacts
$0.01 default
Description

Create a short-lived signed hosted artifact for agents: text, JSON, SVG badge, or redirect URL. No database required for small artifacts.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "content": {
      "description": "Artifact body. Use a string for text, SVG, and redirects, or any JSON value when kind is json."
    },
    "contentType": {
      "description": "Optional MIME type override.",
      "type": "string"
    },
    "filename": {
      "description": "Optional display filename.",
      "maxLength": 120,
      "type": "string"
    },
    "kind": {
      "description": "Kind filter for Temporary Hosted Artifact. Accepted values: \"text\", \"json\", \"svg\", \"redirect\". Constraints: accepted values: \"text\", \"json\", \"svg\", \"redirect\".",
      "enum": [
        "text",
        "json",
        "svg",
        "redirect"
      ],
      "type": "string"
    },
    "ttlSeconds": {
      "default": 86400,
      "description": "Artifact lifetime in seconds.",
      "maximum": 604800,
      "minimum": 60,
      "type": "integer"
    }
  },
  "required": [
    "kind",
    "content"
  ],
  "type": "object"
}
Response schema
{
  "properties": {
    "artifactUrl": {
      "format": "uri",
      "type": "string"
    },
    "expiresAt": {
      "format": "date-time",
      "type": "string"
    }
  },
  "required": [
    "artifactUrl",
    "expiresAt"
  ],
  "type": "object"
}
POST/api/audit/agent-batch
$0.06 default
Description

Run agent-readiness checks across up to five URLs in one paid call and return comparable scores, failures, and concrete next steps.

Pricing
$0.06 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeEvidence": {
      "default": false,
      "description": "Set true to enable include evidence behavior for Agent Readiness Batch Audit. Constraints: default: false.",
      "type": "boolean"
    },
    "scope": {
      "default": "all",
      "description": "Scope filter for Agent Readiness Batch Audit. Accepted values: \"all\", \"discoverability\", \"protocols\", \"commerce\". Constraints: accepted values: \"all\", \"discoverability\", \"protocols\", \"commerce\"; default: \"all\".",
      "enum": [
        "all",
        "discoverability",
        "protocols",
        "commerce"
      ],
      "type": "string"
    },
    "urls": {
      "description": "List of urls values for Agent Readiness Batch Audit. Constraints: min items: 1; max items: 5.",
      "items": {
        "description": "Urls item value for Agent Readiness Batch Audit. Constraints: format: uri.",
        "format": "uri",
        "type": "string"
      },
      "maxItems": 5,
      "minItems": 1,
      "type": "array"
    }
  },
  "required": [
    "urls"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/audit/agent-launch
$0.03 default
Description

Audit whether a site or API is ready for AI agents: discoverability, markdown access, OpenAPI, MCP, Agent Skills, x402 commerce, and concrete fix instructions.

Pricing
$0.03 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeEvidence": {
      "default": true,
      "description": "Set true to enable include evidence behavior for Agent Launch Audit. Constraints: default: true.",
      "type": "boolean"
    },
    "siteType": {
      "default": "all",
      "description": "Site Type filter for Agent Launch Audit. Accepted values: \"all\", \"content\", \"api\". Constraints: accepted values: \"all\", \"content\", \"api\"; default: \"all\".",
      "enum": [
        "all",
        "content",
        "api"
      ],
      "type": "string"
    },
    "url": {
      "description": "Url value for Agent Launch Audit. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/badge/agent-ready
$0.01 default
Description

Generate an agent-readiness score and SVG badge for a URL using the same checks as the launch audit.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeEvidence": {
      "default": false,
      "description": "Set true to enable include evidence behavior for Agent Ready Badge. Constraints: default: false.",
      "type": "boolean"
    },
    "scope": {
      "default": "all",
      "description": "Scope filter for Agent Ready Badge. Accepted values: \"all\", \"discoverability\", \"protocols\", \"commerce\". Constraints: accepted values: \"all\", \"discoverability\", \"protocols\", \"commerce\"; default: \"all\".",
      "enum": [
        "all",
        "discoverability",
        "protocols",
        "commerce"
      ],
      "type": "string"
    },
    "url": {
      "description": "Url value for Agent Ready Badge. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/check/agent-commerce
$0.01 default
Description

Check whether a site exposes machine-payable commerce metadata for x402, MPP-style OpenAPI payment hints, UCP, or ACP.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeEvidence": {
      "default": true,
      "description": "Set true to enable include evidence behavior for Agent Commerce Check. Constraints: default: true.",
      "type": "boolean"
    },
    "url": {
      "description": "Url value for Agent Commerce Check. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/check/agent-discoverability
$0.01 default
Description

Check robots.txt, sitemap, Link headers, markdown access, llms.txt, and AI content-signal hints for agent-facing discoverability.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeEvidence": {
      "default": true,
      "description": "Set true to enable include evidence behavior for Agent Discoverability Check. Constraints: default: true.",
      "type": "boolean"
    },
    "url": {
      "description": "Url value for Agent Discoverability Check. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/check/agent-protocols
$0.02 default
Description

Check OpenAPI, API catalog, MCP server cards, Agent Skills, auth.md, OAuth discovery, OAuth protected-resource metadata, A2A cards, and WebMCP hints.

Pricing
$0.02 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeEvidence": {
      "default": true,
      "description": "Set true to enable include evidence behavior for Agent Protocol Discovery Check. Constraints: default: true.",
      "type": "boolean"
    },
    "url": {
      "description": "Url value for Agent Protocol Discovery Check. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/check/domain
$0.02 default
Description

Check a domain's launch basics: DNS resolution, HTTPS reachability, MX, SPF, DMARC, CAA, and optional DKIM selectors.

Pricing
$0.02 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "dkimSelectors": {
      "description": "Optional DKIM selectors to check, such as google or selector1.",
      "items": {
        "description": "Dkim Selectors item value for DNS SSL Email Launch Check.",
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    },
    "domain": {
      "description": "Domain name to inspect, without a URL scheme.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "domain"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/cloud/status/bundle
$0.01 default
Description

Check up to five cloud service/location units, or a curated cloud-provider bundle, without dumping every healthy cloud service.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "bundle": {
      "default": "cloud-core",
      "description": "Bundle filter for Cloud Status Small Bundle. Accepted values: \"cloud-core\", \"aws-webapp\", \"gcp-ai-app\", \"azure-saas\", \"do-core\", \"linode-core\". Constraints: accepted values: \"cloud-core\", \"aws-webapp\", \"gcp-ai-app\", \"azure-saas\", \"do-core\", \"linode-core\"; default: \"cloud-core\".",
      "enum": [
        "cloud-core",
        "aws-webapp",
        "gcp-ai-app",
        "azure-saas",
        "do-core",
        "linode-core"
      ],
      "type": "string"
    },
    "includeHealthy": {
      "default": false,
      "description": "Set true to enable include healthy behavior for Cloud Status Small Bundle. Constraints: default: false.",
      "type": "boolean"
    },
    "includeHistory": {
      "default": false,
      "description": "Set true to enable include history behavior for Cloud Status Small Bundle. Constraints: default: false.",
      "type": "boolean"
    },
    "targets": {
      "description": "Optional explicit cloud checks. Bundle price covers up to five normalized units.",
      "items": {
        "additionalProperties": false,
        "description": "Targets item object for configuring Cloud Status Small Bundle.",
        "properties": {
          "location": {
            "description": "Provider location alias. Treated the same as region.",
            "type": "string"
          },
          "product": {
            "description": "GCP product name, id, or alias, for example cloud-run, vertex-ai, cloud-sql, or compute-engine.",
            "type": "string"
          },
          "provider": {
            "description": "Cloud provider id.",
            "enum": [
              "aws",
              "gcp",
              "azure",
              "digitalocean",
              "linode"
            ],
            "type": "string"
          },
          "region": {
            "description": "Provider region/location such as us-east-1, us-central1, eastus, nyc3, us-east-newark, or global.",
            "type": "string"
          },
          "service": {
            "description": "Provider service name or id, for example ec2, lambda, app-service, spaces, droplets, object-storage, or lke.",
            "type": "string"
          }
        },
        "required": [
          "provider"
        ],
        "type": "object"
      },
      "maxItems": 5,
      "minItems": 1,
      "type": "array"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/cloud/status/check
$0.0057 default
Description

Check one public AWS, Google Cloud, Azure, DigitalOcean, or Linode service/location status source and return a terse agent-ready verdict.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "incidentLimit": {
      "default": 5,
      "description": "Incident Limit numeric value for Cloud Provider Status Check. Constraints: default: 5; min: 1; max: 20.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeHealthy": {
      "default": false,
      "description": "Include healthy/noisy rows. Default responses focus on degraded or relevant incidents.",
      "type": "boolean"
    },
    "includeHistory": {
      "default": false,
      "description": "Return recent/resolved historical incidents when the provider source exposes them.",
      "type": "boolean"
    },
    "location": {
      "description": "Provider location alias. Treated the same as region.",
      "type": "string"
    },
    "product": {
      "description": "GCP product name, id, or alias, for example cloud-run, vertex-ai, cloud-sql, or compute-engine.",
      "type": "string"
    },
    "provider": {
      "description": "Cloud provider id.",
      "enum": [
        "aws",
        "gcp",
        "azure",
        "digitalocean",
        "linode"
      ],
      "type": "string"
    },
    "region": {
      "description": "Provider region/location such as us-east-1, us-central1, eastus, nyc3, us-east-newark, or global.",
      "type": "string"
    },
    "service": {
      "description": "Provider service name or id, for example ec2, lambda, app-service, spaces, droplets, object-storage, or lke.",
      "type": "string"
    }
  },
  "required": [
    "provider"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/cloud/status/stack
$0.01 default
Description

Check up to twelve caller-selected cloud service/location units for a stack-wide public status verdict.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeHealthy": {
      "default": false,
      "description": "Set true to enable include healthy behavior for Cloud Stack Status Bundle. Constraints: default: false.",
      "type": "boolean"
    },
    "includeHistory": {
      "default": false,
      "description": "Set true to enable include history behavior for Cloud Stack Status Bundle. Constraints: default: false.",
      "type": "boolean"
    },
    "targets": {
      "description": "Caller-selected cloud checks. Stack price covers up to twelve normalized units.",
      "items": {
        "additionalProperties": false,
        "description": "Targets item object for configuring Cloud Stack Status Bundle.",
        "properties": {
          "location": {
            "description": "Provider location alias. Treated the same as region.",
            "type": "string"
          },
          "product": {
            "description": "GCP product name, id, or alias, for example cloud-run, vertex-ai, cloud-sql, or compute-engine.",
            "type": "string"
          },
          "provider": {
            "description": "Cloud provider id.",
            "enum": [
              "aws",
              "gcp",
              "azure",
              "digitalocean",
              "linode"
            ],
            "type": "string"
          },
          "region": {
            "description": "Provider region/location such as us-east-1, us-central1, eastus, nyc3, us-east-newark, or global.",
            "type": "string"
          },
          "service": {
            "description": "Provider service name or id, for example ec2, lambda, app-service, spaces, droplets, object-storage, or lke.",
            "type": "string"
          }
        },
        "required": [
          "provider"
        ],
        "type": "object"
      },
      "maxItems": 12,
      "minItems": 3,
      "type": "array"
    }
  },
  "required": [
    "targets"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/cloud/status/summary
$0.01 default
Description

Summarize public broad-impact incidents for AWS, Google Cloud, Azure, DigitalOcean, Linode, or all providers before an agent retries cloud work.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "incidentLimit": {
      "default": 5,
      "description": "Incident Limit numeric value for Cloud Provider Status Summary. Constraints: default: 5; min: 1; max: 20.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeHealthy": {
      "default": false,
      "description": "Set true to enable include healthy behavior for Cloud Provider Status Summary. Constraints: default: false.",
      "type": "boolean"
    },
    "includeHistory": {
      "default": false,
      "description": "Set true to enable include history behavior for Cloud Provider Status Summary. Constraints: default: false.",
      "type": "boolean"
    },
    "provider": {
      "default": "all",
      "description": "Provider filter for Cloud Provider Status Summary. Accepted values: \"aws\", \"gcp\", \"azure\", \"digitalocean\", \"linode\", \"all\". Constraints: accepted values: \"aws\", \"gcp\", \"azure\", \"digitalocean\", \"linode\", \"all\"; default: \"all\".",
      "enum": [
        "aws",
        "gcp",
        "azure",
        "digitalocean",
        "linode",
        "all"
      ],
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/developer/jwt/inspect
$0.0057 default
Description

Decode one compact JWT without requiring a secret and return normalized header, claim timing, issuer and audience checks, signature presence, warnings, and safe debugging guidance for agent and API workflows.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "expectedAudience": {
      "description": "Optional audience value to compare with the token aud claim.",
      "maxLength": 300,
      "type": "string"
    },
    "expectedIssuer": {
      "description": "Optional issuer value to compare with the token iss claim.",
      "maxLength": 300,
      "type": "string"
    },
    "includeRaw": {
      "default": false,
      "description": "Set true to include the raw header and payload objects. The signature is never returned.",
      "type": "boolean"
    },
    "now": {
      "description": "Optional Unix timestamp in seconds for exp, nbf, and iat checks. Defaults to current time.",
      "minimum": 0,
      "type": "integer"
    },
    "token": {
      "description": "Compact JWT string with three dot-separated Base64URL segments.",
      "maxLength": 8192,
      "minLength": 20,
      "type": "string"
    }
  },
  "required": [
    "token"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checks": {
      "additionalProperties": true,
      "type": "object"
    },
    "claims": {
      "additionalProperties": true,
      "type": "object"
    },
    "header": {
      "additionalProperties": true,
      "type": "object"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "token": {
      "additionalProperties": true,
      "type": "object"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "warnings": {
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "token",
    "header",
    "claims",
    "checks",
    "warnings",
    "limits"
  ],
  "type": "object"
}
POST/api/developer/webhook/debug
$0.0057 default
Description

Inspect one webhook delivery payload with normalized headers, JSON parsing, safe redaction, timestamp replay-window checks, optional HMAC signature verification, warnings, and compact debugging guidance.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "body": {
      "anyOf": [
        {
          "maxLength": 16384,
          "type": "string"
        },
        {
          "additionalProperties": true,
          "type": "object"
        }
      ],
      "description": "Webhook request body as a string or JSON object. Objects are canonicalized before hashing and parsing."
    },
    "expectedContentType": {
      "description": "Optional content type expectation, such as application/json.",
      "maxLength": 120,
      "type": "string"
    },
    "headers": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "Webhook headers as received. Header names are normalized case-insensitively and values are capped before analysis.",
      "maxProperties": 64,
      "type": "object"
    },
    "includeBody": {
      "default": false,
      "description": "Set true to include a capped, redacted body excerpt in the response.",
      "type": "boolean"
    },
    "method": {
      "default": "POST",
      "description": "HTTP method used by the webhook delivery.",
      "enum": [
        "POST",
        "PUT",
        "PATCH",
        "DELETE",
        "GET"
      ],
      "type": "string"
    },
    "redactFields": {
      "description": "Case-insensitive JSON field names to redact before returning parsed body details.",
      "items": {
        "description": "Redact Fields item value for Webhook Debugger. Constraints: max length: 80.",
        "maxLength": 80,
        "type": "string"
      },
      "maxItems": 20,
      "type": "array"
    },
    "signatureAlgorithm": {
      "default": "sha256",
      "description": "HMAC algorithm used when signatureSecret and signatureHeader are supplied.",
      "enum": [
        "sha256",
        "sha1",
        "sha512"
      ],
      "type": "string"
    },
    "signatureHeader": {
      "description": "Optional header name that contains the webhook signature, for example x-hub-signature-256 or stripe-signature.",
      "maxLength": 120,
      "type": "string"
    },
    "signatureSecret": {
      "description": "Optional shared secret for HMAC verification. The secret is used only for this run and is not returned.",
      "maxLength": 512,
      "type": "string"
    },
    "timestampHeader": {
      "description": "Optional header name that contains a delivery timestamp, used for replay-window checks.",
      "maxLength": 120,
      "type": "string"
    },
    "timestampToleranceSeconds": {
      "default": 300,
      "description": "Allowed absolute timestamp age in seconds when timestampHeader is supplied.",
      "maximum": 86400,
      "minimum": 1,
      "type": "integer"
    },
    "url": {
      "description": "Optional public destination URL or callback URL to include in the debugging report.",
      "format": "uri",
      "maxLength": 500,
      "type": "string"
    }
  },
  "required": [
    "headers",
    "body"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "headers": {
      "additionalProperties": true,
      "type": "object"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "payload": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "signature": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "timestamp": {
      "additionalProperties": true,
      "type": "object"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "warnings": {
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "headers",
    "payload",
    "signature",
    "timestamp",
    "warnings",
    "limits"
  ],
  "type": "object"
}
POST/api/documents/any-to-markdown
$0.01 default
Description

Convert one public URL into cleaned markdown with page metadata, normalized links, byte limits, truncation flags, and text statistics for RAG, notes, and agent content workflows.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeLinks": {
      "default": true,
      "description": "Set true to include normalized links that were visible in the source content.",
      "type": "boolean"
    },
    "maxBytes": {
      "default": 32768,
      "description": "Maximum response body bytes to read before truncating the markdown extraction.",
      "maximum": 65536,
      "minimum": 1024,
      "type": "integer"
    },
    "maxLinks": {
      "default": 20,
      "description": "Maximum links to return when includeLinks is true.",
      "maximum": 50,
      "minimum": 0,
      "type": "integer"
    },
    "timeoutMs": {
      "default": 5000,
      "description": "Fetch and extraction timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    },
    "url": {
      "description": "Public HTTP or HTTPS URL to convert into clean markdown. Local, private, and non-web schemes are rejected.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "fetched": {
      "additionalProperties": true,
      "type": "object"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "links": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "metadata": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "text": {
      "additionalProperties": true,
      "type": "object"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "fetched",
    "metadata",
    "text",
    "links",
    "limits"
  ],
  "type": "object"
}
POST/api/documents/rag-prep
$0.01 default
Description

Prepare one public URL or raw text payload for retrieval workflows with cleaned text, stable chunk IDs, overlap-aware chunks, token estimates, keyword hints, optional entity hints, JSONL or markdown formatting, and strict size caps.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "artifactMode": {
      "default": "auto",
      "description": "For jsonl or markdown output, auto creates a short-lived signed artifact when the formatted output is small enough for stateless artifact delivery.",
      "enum": [
        "auto",
        "inline",
        "artifact"
      ],
      "type": "string"
    },
    "chunkOverlapChars": {
      "default": 120,
      "description": "Characters copied from the end of the previous chunk into the next chunk.",
      "maximum": 1000,
      "minimum": 0,
      "type": "integer"
    },
    "chunkSizeChars": {
      "default": 1200,
      "description": "Target maximum character count per chunk before overlap is applied.",
      "maximum": 3000,
      "minimum": 200,
      "type": "integer"
    },
    "includeEntities": {
      "default": false,
      "description": "Include simple capitalized-phrase entity hints. This is deterministic extraction, not LLM inference.",
      "type": "boolean"
    },
    "includeKeywords": {
      "default": true,
      "description": "Include lightweight frequency-based keyword hints.",
      "type": "boolean"
    },
    "includeLinks": {
      "default": true,
      "description": "For URL sources, include normalized links visible in the source content.",
      "type": "boolean"
    },
    "includeMarkdown": {
      "default": true,
      "description": "For URL sources, include the extracted markdown when it fits the response caps.",
      "type": "boolean"
    },
    "maxBytes": {
      "default": 32768,
      "description": "For URL sources, maximum response body bytes to read before extraction is truncated.",
      "maximum": 65536,
      "minimum": 1024,
      "type": "integer"
    },
    "maxChunks": {
      "default": 50,
      "description": "Maximum number of chunks returned.",
      "maximum": 100,
      "minimum": 1,
      "type": "integer"
    },
    "maxLinks": {
      "default": 20,
      "description": "For URL sources, maximum links to return when includeLinks is true.",
      "maximum": 50,
      "minimum": 0,
      "type": "integer"
    },
    "outputFormat": {
      "default": "json",
      "description": "Response format helper. json returns structured chunks; jsonl and markdown also include a formatted output string or artifact.",
      "enum": [
        "json",
        "jsonl",
        "markdown"
      ],
      "type": "string"
    },
    "source": {
      "description": "Required source to prepare for RAG. Pass a public HTTP/HTTPS URL when sourceType is url, or raw text when sourceType is text.",
      "maxLength": 49152,
      "type": "string"
    },
    "sourceType": {
      "default": "auto",
      "description": "How to interpret source. auto treats HTTP/HTTPS strings as URLs and everything else as raw text.",
      "enum": [
        "auto",
        "url",
        "text"
      ],
      "type": "string"
    },
    "timeoutMs": {
      "default": 5000,
      "description": "For URL sources, fetch timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    }
  },
  "required": [
    "source"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "chunks": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "document": {
      "additionalProperties": true,
      "type": "object"
    },
    "entities": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "keywords": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "output": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "document",
    "chunks",
    "limits"
  ],
  "type": "object"
}
POST/api/inspect/x402
$0.0057 default
Description

Inspect a URL for x402 payment challenges, payable metadata, discovery links, OpenAPI, MCP, Agent Skills, and Bazaar-readiness signals.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "body": {
      "additionalProperties": true,
      "description": "Body object for configuring x402 Endpoint Inspector.",
      "type": "object"
    },
    "headers": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "Headers object for configuring x402 Endpoint Inspector.",
      "type": "object"
    },
    "method": {
      "default": "GET",
      "description": "Method filter for x402 Endpoint Inspector. Accepted values: \"GET\", \"HEAD\", \"POST\". Constraints: accepted values: \"GET\", \"HEAD\", \"POST\"; default: \"GET\".",
      "enum": [
        "GET",
        "HEAD",
        "POST"
      ],
      "type": "string"
    },
    "timeoutMs": {
      "default": 5000,
      "description": "Timeout Ms numeric value for x402 Endpoint Inspector. Constraints: default: 5000; min: 500; max: 8000.",
      "maximum": 8000,
      "minimum": 500,
      "type": "integer"
    },
    "url": {
      "description": "Url value for x402 Endpoint Inspector. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/media/image/convert
$0.01 default
Description

Create a short-lived signed download URL that converts one public image into JPG, PNG, WebP, or AVIF with capped size, fit, quality, and TTL controls. Useful for HEIC-to-JPG-style agent workflows without exposing backend media infrastructure.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "background": {
      "description": "Optional CSS color used by padded or transparent-to-JPEG conversions, for example #ffffff.",
      "maxLength": 40,
      "type": "string"
    },
    "filename": {
      "description": "Optional download filename. The service normalizes the extension to match targetFormat.",
      "maxLength": 120,
      "type": "string"
    },
    "fit": {
      "default": "scale-down",
      "description": "Resize mode used when width or height is supplied. scale-down preserves the image unless it is larger than the requested bounds.",
      "enum": [
        "scale-down",
        "contain",
        "cover",
        "crop",
        "pad"
      ],
      "type": "string"
    },
    "height": {
      "description": "Optional output height in pixels. If omitted, the source height is preserved when the backend supports it.",
      "maximum": 4096,
      "minimum": 1,
      "type": "integer"
    },
    "imageUrl": {
      "description": "Public HTTP or HTTPS image URL to convert. Local, private, credentialed, intranet, and redirecting URLs are rejected.",
      "format": "uri",
      "type": "string"
    },
    "quality": {
      "default": 85,
      "description": "Output quality for lossy formats. Values above 95 are rejected to keep route cost and response size bounded.",
      "maximum": 95,
      "minimum": 1,
      "type": "integer"
    },
    "targetFormat": {
      "description": "Output image format. Use jpg or jpeg for HEIC-to-JPG-style conversion; png, webp, and avif are also accepted when supported by the image backend.",
      "enum": [
        "jpg",
        "jpeg",
        "png",
        "webp",
        "avif"
      ],
      "type": "string"
    },
    "ttlSeconds": {
      "default": 3600,
      "description": "How long the signed conversion download URL should remain usable, in seconds.",
      "maximum": 86400,
      "minimum": 60,
      "type": "integer"
    },
    "width": {
      "description": "Optional output width in pixels. If omitted, the source width is preserved when the backend supports it.",
      "maximum": 4096,
      "minimum": 1,
      "type": "integer"
    }
  },
  "required": [
    "imageUrl",
    "targetFormat"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "conversion": {
      "additionalProperties": true,
      "type": "object"
    },
    "download": {
      "additionalProperties": true,
      "type": "object"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "conversion",
    "download",
    "limits"
  ],
  "type": "object"
}
POST/api/name/check
$0.0057 default
Description

Check one launch-name slug against selected public domain TLDs and GitHub handles, returning available, taken, invalid, or unknown with evidence and confidence instead of guessing.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "candidate": {
      "description": "Required launch-name slug to check. Use lowercase letters, numbers, and hyphens only; no spaces, underscores, URL schemes, or leading @.",
      "maxLength": 80,
      "minLength": 1,
      "type": "string"
    },
    "handles": {
      "default": [
        "github"
      ],
      "description": "Developer handle platforms to check. MVP coverage is GitHub only; browser-heavy social handle checks are separate future routes and are not advertised here.",
      "items": {
        "description": "Handles item filter for Name Availability Check. Accepted values: \"github\". Constraints: accepted values: \"github\".",
        "enum": [
          "github"
        ],
        "type": "string"
      },
      "maxItems": 1,
      "type": "array"
    },
    "includeWarnings": {
      "default": true,
      "description": "Include actionability and legal/ownership warnings in the response.",
      "type": "boolean"
    },
    "tlds": {
      "default": [
        "com",
        "ai",
        "dev",
        "app",
        "io",
        "co",
        "net",
        "org",
        "xyz",
        "store"
      ],
      "description": "Domain TLDs to check. This endpoint only accepts delegated TLDs with reliable public RDAP coverage, and rejects unsupported TLDs instead of guessing.",
      "items": {
        "description": "Tlds item filter for Name Availability Check. Accepted values: \"com\", \"ai\", \"dev\", \"app\", \"io\", \"co\", \"net\", \"org\", \"xyz\", \"store\". Constraints: accepted values: \"com\", \"ai\", \"dev\", \"app\", \"io\", \"co\", \"net\", \"org\", \"xyz\", \"store\".",
        "enum": [
          "com",
          "ai",
          "dev",
          "app",
          "io",
          "co",
          "net",
          "org",
          "xyz",
          "store"
        ],
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    }
  },
  "required": [
    "candidate"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "candidate": {
      "type": "string"
    },
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "domains": {
      "items": {
        "additionalProperties": true,
        "properties": {
          "checkedAt": {
            "format": "date-time",
            "type": "string"
          },
          "confidence": {
            "enum": [
              "high",
              "low"
            ],
            "type": "string"
          },
          "domain": {
            "type": "string"
          },
          "evidence": {
            "additionalProperties": true,
            "type": "object"
          },
          "source": {
            "type": "string"
          },
          "status": {
            "enum": [
              "available",
              "taken",
              "unknown"
            ],
            "type": "string"
          },
          "tld": {
            "type": "string"
          }
        },
        "required": [
          "domain",
          "tld",
          "status",
          "confidence",
          "source",
          "checkedAt"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "handles": {
      "items": {
        "additionalProperties": true,
        "properties": {
          "checkedAt": {
            "format": "date-time",
            "type": "string"
          },
          "confidence": {
            "enum": [
              "high",
              "low"
            ],
            "type": "string"
          },
          "evidence": {
            "additionalProperties": true,
            "type": "object"
          },
          "handle": {
            "type": "string"
          },
          "platform": {
            "enum": [
              "github"
            ],
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "status": {
            "enum": [
              "available",
              "taken",
              "unknown",
              "invalid"
            ],
            "type": "string"
          }
        },
        "required": [
          "platform",
          "handle",
          "status",
          "confidence",
          "source",
          "checkedAt"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "summary": {
      "additionalProperties": true,
      "properties": {
        "domainCounts": {
          "additionalProperties": {
            "type": "integer"
          },
          "type": "object"
        },
        "handleCounts": {
          "additionalProperties": {
            "type": "integer"
          },
          "type": "object"
        },
        "highConfidenceOnly": {
          "type": "boolean"
        },
        "recommendation": {
          "enum": [
            "shortlist",
            "review",
            "avoid"
          ],
          "type": "string"
        }
      },
      "required": [
        "recommendation",
        "domainCounts",
        "handleCounts"
      ],
      "type": "object"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "warnings": {
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "success",
    "tool",
    "candidate",
    "checkedAt",
    "summary",
    "domains",
    "handles"
  ],
  "type": "object"
}
POST/api/package/x402-directory
$0.01 default
Description

Build a compact listing payload for x402 directories: service name, discovery links, payment metadata, endpoint counts, tags, and readiness warnings.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "name": {
      "description": "Name value for x402 Directory Listing Pack. Constraints: max length: 80.",
      "maxLength": 80,
      "type": "string"
    },
    "tags": {
      "description": "List of tags values for x402 Directory Listing Pack. Constraints: max items: 12.",
      "items": {
        "description": "Tags item value for x402 Directory Listing Pack.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "url": {
      "description": "Url value for x402 Directory Listing Pack. Constraints: format: uri.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/prediction-markets/listings
$0.01 default
Description

Return fresh public prediction-market listings sorted by volume, liquidity, newest, or ending soon with capped rows, normalized outcomes, category labels, and no trade execution.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "activeOnly": {
      "default": true,
      "description": "When true, return currently active, unresolved markets only.",
      "type": "boolean"
    },
    "category": {
      "description": "Optional category, event, or tag filter when the caller wants a narrower market family.",
      "maxLength": 80,
      "type": "string"
    },
    "closed": {
      "default": false,
      "description": "Set true only when historical or resolved markets are acceptable.",
      "type": "boolean"
    },
    "includeRules": {
      "default": false,
      "description": "Set true to include capped market rule or description text.",
      "type": "boolean"
    },
    "limit": {
      "default": 10,
      "description": "Maximum normalized market rows to return.",
      "maximum": 25,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Optional text filter matched against market title, slug, description, outcomes, and category labels.",
      "maxLength": 160,
      "type": "string"
    },
    "sort": {
      "default": "volume_desc",
      "description": "Sort order for returned markets.",
      "enum": [
        "volume_desc",
        "liquidity_desc",
        "newest",
        "ending_soon"
      ],
      "type": "string"
    },
    "venue": {
      "default": "managed",
      "description": "Venue selector. Use managed for AgentBodega's normalized market feed.",
      "enum": [
        "managed",
        "polymarket"
      ],
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "description": "Server-side ISO timestamp.",
      "type": "string"
    },
    "count": {
      "description": "Number of normalized market rows returned.",
      "type": "integer"
    },
    "limits": {
      "additionalProperties": true,
      "description": "Published caps for this route.",
      "type": "object"
    },
    "marketFeed": {
      "additionalProperties": true,
      "description": "Provider-neutral feed metadata and public-data boundary.",
      "type": "object"
    },
    "markets": {
      "description": "Normalized prediction-market rows. These are read-only market intelligence records, not trading instructions.",
      "items": {
        "additionalProperties": true,
        "properties": {
          "active": {
            "description": "Whether the market is active.",
            "type": "boolean"
          },
          "categories": {
            "description": "Normalized category, event, or tag labels.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "closed": {
            "description": "Whether the market is closed or resolved.",
            "type": "boolean"
          },
          "endsAt": {
            "description": "Market end timestamp when available.",
            "type": "string"
          },
          "id": {
            "description": "Stable market id.",
            "type": "string"
          },
          "liquidity": {
            "description": "Reported liquidity when available.",
            "type": "number"
          },
          "outcomes": {
            "description": "Outcome labels and implied prices when available.",
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "rules": {
            "description": "Optional capped rules/description text when includeRules is true.",
            "type": "string"
          },
          "slug": {
            "description": "Stable market slug when available.",
            "type": "string"
          },
          "title": {
            "description": "Market question or title.",
            "type": "string"
          },
          "url": {
            "description": "Public market URL when available.",
            "type": "string"
          },
          "venue": {
            "description": "Normalized venue label.",
            "type": "string"
          },
          "volume": {
            "description": "Reported all-time volume when available.",
            "type": "number"
          }
        },
        "type": "object"
      },
      "type": "array"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized filters and caps.",
      "type": "object"
    },
    "success": {
      "description": "True when the market search completed.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega tool metadata.",
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "marketFeed",
    "count",
    "markets",
    "limits",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/prediction-markets/search
$0.01 default
Description

Search active or historical public prediction markets by keyword, category, venue, liquidity, volume, and end date; returns normalized read-only market rows with outcomes, prices, and source-neutral feed metadata.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "activeOnly": {
      "default": true,
      "description": "When true, return currently active, unresolved markets only.",
      "type": "boolean"
    },
    "category": {
      "description": "Optional category, event, or tag filter when the caller wants a narrower market family.",
      "maxLength": 80,
      "type": "string"
    },
    "closed": {
      "default": false,
      "description": "Set true only when historical or resolved markets are acceptable.",
      "type": "boolean"
    },
    "includeRules": {
      "default": false,
      "description": "Set true to include capped market rule or description text.",
      "type": "boolean"
    },
    "limit": {
      "default": 10,
      "description": "Maximum normalized market rows to return.",
      "maximum": 25,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Optional text filter matched against market title, slug, description, outcomes, and category labels.",
      "maxLength": 160,
      "type": "string"
    },
    "sort": {
      "default": "volume_desc",
      "description": "Sort order for returned markets.",
      "enum": [
        "volume_desc",
        "liquidity_desc",
        "newest",
        "ending_soon"
      ],
      "type": "string"
    },
    "venue": {
      "default": "managed",
      "description": "Venue selector. Use managed for AgentBodega's normalized market feed.",
      "enum": [
        "managed",
        "polymarket"
      ],
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "description": "Server-side ISO timestamp.",
      "type": "string"
    },
    "count": {
      "description": "Number of normalized market rows returned.",
      "type": "integer"
    },
    "limits": {
      "additionalProperties": true,
      "description": "Published caps for this route.",
      "type": "object"
    },
    "marketFeed": {
      "additionalProperties": true,
      "description": "Provider-neutral feed metadata and public-data boundary.",
      "type": "object"
    },
    "markets": {
      "description": "Normalized prediction-market rows. These are read-only market intelligence records, not trading instructions.",
      "items": {
        "additionalProperties": true,
        "properties": {
          "active": {
            "description": "Whether the market is active.",
            "type": "boolean"
          },
          "categories": {
            "description": "Normalized category, event, or tag labels.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "closed": {
            "description": "Whether the market is closed or resolved.",
            "type": "boolean"
          },
          "endsAt": {
            "description": "Market end timestamp when available.",
            "type": "string"
          },
          "id": {
            "description": "Stable market id.",
            "type": "string"
          },
          "liquidity": {
            "description": "Reported liquidity when available.",
            "type": "number"
          },
          "outcomes": {
            "description": "Outcome labels and implied prices when available.",
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "rules": {
            "description": "Optional capped rules/description text when includeRules is true.",
            "type": "string"
          },
          "slug": {
            "description": "Stable market slug when available.",
            "type": "string"
          },
          "title": {
            "description": "Market question or title.",
            "type": "string"
          },
          "url": {
            "description": "Public market URL when available.",
            "type": "string"
          },
          "venue": {
            "description": "Normalized venue label.",
            "type": "string"
          },
          "volume": {
            "description": "Reported all-time volume when available.",
            "type": "number"
          }
        },
        "type": "object"
      },
      "type": "array"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized filters and caps.",
      "type": "object"
    },
    "success": {
      "description": "True when the market search completed.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega tool metadata.",
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "marketFeed",
    "count",
    "markets",
    "limits",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/california-highway-traffic
$0.0057 default
Description

Return live California highway speed snapshots grouped by road and direction, with optional incident and sensor detail, without exposing collection endpoints.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "direction": {
      "description": "Direction filter for California Highway Traffic Speeds. Accepted values: \"North\", \"South\", \"East\", \"West\". Constraints: accepted values: \"North\", \"South\", \"East\", \"West\".",
      "enum": [
        "North",
        "South",
        "East",
        "West"
      ],
      "type": "string"
    },
    "includeIncidents": {
      "default": true,
      "description": "Set true to enable include incidents behavior for California Highway Traffic Speeds. Constraints: default: true.",
      "type": "boolean"
    },
    "includeSensors": {
      "default": false,
      "description": "Set true to enable include sensors behavior for California Highway Traffic Speeds. Constraints: default: false.",
      "type": "boolean"
    },
    "limit": {
      "default": 100,
      "description": "Limit numeric value for California Highway Traffic Speeds. Constraints: default: 100; min: 1; max: 200.",
      "maximum": 200,
      "minimum": 1,
      "type": "integer"
    },
    "minMph": {
      "description": "Only return sections whose average speed is at or below this MPH.",
      "minimum": 0,
      "type": "integer"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "region": {
      "default": "NoCal",
      "description": "California traffic region.",
      "enum": [
        "NoCal",
        "SoCal",
        "CenCal"
      ],
      "type": "string"
    },
    "road": {
      "description": "Optional road/highway filter, such as 101, 580, I-80, or CA-1.",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/catalog
$0.0057 default
Description

Return AgentBodega's Public Data department offerings grouped by category with full input/output schemas, prices, route paths, and workflow guidance.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "category": {
      "description": "Optional Public Data department/category to return.",
      "enum": [
        "catalog",
        "workflow-bundles",
        "cached-results",
        "recurring-monitoring",
        "discovery-verification",
        "data-enrichment",
        "marketplace-listings",
        "real-estate-rentals",
        "ecommerce-products-reviews",
        "health-prices",
        "jobs-hiring",
        "facebook-data",
        "social-video-intelligence",
        "news",
        "public-records"
      ],
      "type": "string"
    },
    "includeSchemas": {
      "default": true,
      "description": "Include each endpoint's full input and output schemas.",
      "type": "boolean"
    },
    "limit": {
      "default": 28,
      "description": "Maximum number of endpoints to return after filters.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "name": {
      "description": "Optional exact endpoint name, such as osha-violations-scraper or marketplace-leads.",
      "type": "string"
    },
    "query": {
      "description": "Optional text filter matched against endpoint name, title, category, description, tags, and path.",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "categories": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "department": {
      "additionalProperties": true,
      "type": "object"
    },
    "endpoints": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "department",
    "categories",
    "endpoints"
  ],
  "type": "object"
}
POST/api/public-data/classified-listing-search
$0.0057 default
Description

Search public classified listings by market area, category, query, and common marketplace filters; returns normalized posting titles, prices, locations, dates, and ids without exposing collection URLs.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "bundleDuplicates": {
      "description": "Set true to enable bundle duplicates behavior for Classified Listing Search.",
      "type": "boolean"
    },
    "category": {
      "description": "Listing category abbreviation, such as sss, cta, apa, jjj, or zip.",
      "type": "string"
    },
    "city": {
      "description": "Market area id, such as sfbay, newyork, losangeles, seattle, chicago, or boston.",
      "type": "string"
    },
    "hasPic": {
      "description": "Set true to enable has pic behavior for Classified Listing Search.",
      "type": "boolean"
    },
    "limit": {
      "default": 25,
      "description": "Limit numeric value for Classified Listing Search. Constraints: default: 25; min: 1; max: 100.",
      "maximum": 100,
      "minimum": 1,
      "type": "integer"
    },
    "max_bedrooms": {
      "description": "Max bedrooms numeric value for Classified Listing Search. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "max_price": {
      "description": "Max price numeric value for Classified Listing Search. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "min_bedrooms": {
      "description": "Min bedrooms numeric value for Classified Listing Search. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "min_price": {
      "description": "Min price numeric value for Classified Listing Search. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "postal": {
      "description": "Optional postal code to force geo-scoping when the caller's IP region differs from the target city.",
      "type": "string"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "query": {
      "description": "Search text.",
      "type": "string"
    },
    "search_distance": {
      "description": "Optional radius in miles when postal is supplied.",
      "maximum": 500,
      "minimum": 1,
      "type": "integer"
    },
    "sort": {
      "default": "date",
      "description": "Sort filter for Classified Listing Search. Accepted values: \"date\", \"rel\", \"priceasc\", \"pricedsc\". Constraints: accepted values: \"date\", \"rel\", \"priceasc\", \"pricedsc\"; default: \"date\".",
      "enum": [
        "date",
        "rel",
        "priceasc",
        "pricedsc"
      ],
      "type": "string"
    }
  },
  "required": [
    "city",
    "category",
    "query"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/home-comparable-sales
$0.03 default
Description

Return best-effort recent sold comparable sales for a region or lat/lon search, with normalized property attributes and no source links.

Pricing
$0.03 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "lat": {
      "description": "Subject latitude for a bounded-radius polygon search.",
      "type": "number"
    },
    "limit": {
      "default": 10,
      "description": "Limit numeric value for Home Comparable Sales. Constraints: default: 10; min: 1; max: 50.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "lon": {
      "description": "Subject longitude for a bounded-radius polygon search.",
      "type": "number"
    },
    "market": {
      "description": "Market slug, such as sanfrancisco, losangeles, seattle, chicago, newyork, or boston.",
      "type": "string"
    },
    "maxBaths": {
      "description": "Max Baths numeric value for Home Comparable Sales. Constraints: min: 0.",
      "minimum": 0,
      "type": "number"
    },
    "maxBeds": {
      "description": "Max Beds numeric value for Home Comparable Sales. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "maxPrice": {
      "description": "Max Price numeric value for Home Comparable Sales. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "minBaths": {
      "description": "Min Baths numeric value for Home Comparable Sales. Constraints: min: 0.",
      "minimum": 0,
      "type": "number"
    },
    "minBeds": {
      "description": "Min Beds numeric value for Home Comparable Sales. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "minPrice": {
      "description": "Min Price numeric value for Home Comparable Sales. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "radiusMiles": {
      "default": 1,
      "description": "Radius Miles numeric value for Home Comparable Sales. Constraints: default: 1; min: 0.1; max: 25.",
      "maximum": 25,
      "minimum": 0.1,
      "type": "number"
    },
    "regionId": {
      "description": "Market region id, such as city id or ZIP region id.",
      "type": "string"
    },
    "regionType": {
      "default": 6,
      "description": "Market region type. Common values: 2 for ZIP, 6 for city.",
      "type": "integer"
    },
    "soldWithinDays": {
      "default": 180,
      "description": "Sold Within Days filter for Home Comparable Sales. Accepted values: 30, 90, 180, 365, 730, 1095. Constraints: accepted values: 30, 90, 180, 365, 730, 1095; default: 180.",
      "enum": [
        30,
        90,
        180,
        365,
        730,
        1095
      ],
      "type": "integer"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/hospital-quality-rating
$0.0057 default
Description

Look up public hospital quality metadata by facility id or hospital name/state, including overall star rating and selected measure rows.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "careCompareUrl": {
      "description": "Optional hospital detail URL containing the facility id. Prefer ccn or hospitalName/state for whitelabeled calls.",
      "format": "uri",
      "type": "string"
    },
    "ccn": {
      "description": "Six-digit facility id.",
      "type": "string"
    },
    "city": {
      "description": "City value for Hospital Quality Rating.",
      "type": "string"
    },
    "compareTo": {
      "description": "Optional extra CCNs to fetch side by side.",
      "items": {
        "description": "Compare To item value for Hospital Quality Rating.",
        "type": "string"
      },
      "maxItems": 3,
      "type": "array"
    },
    "hospitalName": {
      "description": "Hospital/facility name for lookup.",
      "type": "string"
    },
    "includeMeasures": {
      "default": true,
      "description": "Set true to enable include measures behavior for Hospital Quality Rating. Constraints: default: true.",
      "type": "boolean"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "state": {
      "description": "Two-letter state abbreviation for name lookup.",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/news-briefing/summary
$0.0057 default
Description

Return a compact rolling public-news briefing with ranked items, titles, and summaries; supports a small text filter and capped item count for fast agent context.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "limit": {
      "default": 10,
      "description": "Maximum briefing items to return.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Optional case-insensitive filter matched against briefing titles and summary text.",
      "maxLength": 160,
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "briefing": {
      "additionalProperties": true,
      "description": "Whitelabeled briefing metadata and refresh cadence.",
      "type": "object"
    },
    "checkedAt": {
      "description": "Server-side ISO timestamp for this briefing fetch.",
      "type": "string"
    },
    "count": {
      "description": "Number of briefing items returned.",
      "type": "integer"
    },
    "items": {
      "description": "Briefing items in source order.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "rank": {
            "description": "One-based rank in the briefing.",
            "type": "integer"
          },
          "summary": {
            "description": "Compact summary of the development.",
            "type": "string"
          },
          "title": {
            "description": "Briefing topic or headline.",
            "type": "string"
          }
        },
        "required": [
          "rank",
          "title",
          "summary"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized request filters and caps.",
      "type": "object"
    },
    "success": {
      "description": "True when the briefing was parsed.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega tool metadata.",
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "briefing",
    "count",
    "items",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/news-headlines/search
$0.0057 default
Description

Search a managed public news index by topic, publisher label, lookback window, keyword query, sentiment bounds, and sort order; returns normalized headline rows with publisher article URLs.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "hours": {
      "default": 24,
      "description": "Lookback window in hours. Defaults to the last 24 hours and is capped at 24.",
      "maximum": 24,
      "minimum": 1,
      "type": "integer"
    },
    "includeContent": {
      "default": false,
      "description": "Set true to include a capped cleaned content excerpt when available.",
      "type": "boolean"
    },
    "limit": {
      "default": 10,
      "description": "Maximum headline rows to return after filtering and sorting.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "maxSentiment": {
      "description": "Optional upper bound for compound sentiment from -1 to 1.",
      "maximum": 1,
      "minimum": -1,
      "type": "number"
    },
    "minSentiment": {
      "description": "Optional lower bound for compound sentiment from -1 to 1.",
      "maximum": 1,
      "minimum": -1,
      "type": "number"
    },
    "publisher": {
      "description": "Optional publisher/feed id filter when the caller already knows the feed label to narrow.",
      "maxLength": 80,
      "type": "string"
    },
    "query": {
      "description": "Optional case-insensitive text filter matched against title, description, topic, publisher id, URL, and keywords.",
      "maxLength": 160,
      "type": "string"
    },
    "sort": {
      "default": "published_desc",
      "description": "Sort order for returned headlines.",
      "enum": [
        "published_desc",
        "published_asc",
        "sentiment_desc",
        "sentiment_asc"
      ],
      "type": "string"
    },
    "topic": {
      "default": "all",
      "description": "Optional news topic filter. Use all for the full managed index.",
      "enum": [
        "all",
        "tech",
        "news",
        "business",
        "science",
        "gaming",
        "culture",
        "politics",
        "sports"
      ],
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "description": "Server-side ISO timestamp for this search.",
      "type": "string"
    },
    "count": {
      "description": "Number of headline rows returned.",
      "type": "integer"
    },
    "feed": {
      "additionalProperties": true,
      "description": "Whitelabeled managed index metadata; backend provider URLs are not disclosed.",
      "type": "object"
    },
    "headlines": {
      "description": "Normalized headline rows.",
      "items": {
        "additionalProperties": true,
        "properties": {
          "age": {
            "description": "Short relative age label from the managed index.",
            "type": "string"
          },
          "contentText": {
            "description": "Optional capped cleaned content excerpt when includeContent is true.",
            "type": "string"
          },
          "description": {
            "description": "Short article description or summary.",
            "type": "string"
          },
          "id": {
            "description": "Stable upstream row id or deterministic fallback.",
            "type": "string"
          },
          "insertedAt": {
            "description": "Index insertion timestamp when available.",
            "type": "string"
          },
          "keywords": {
            "description": "Keyword labels when available.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "publishedAt": {
            "description": "Article publish timestamp when available.",
            "type": "string"
          },
          "publisher": {
            "additionalProperties": true,
            "description": "Publisher/feed label when available.",
            "type": "object"
          },
          "sentiment": {
            "additionalProperties": true,
            "description": "Compound, positive, negative, and neutral sentiment hints when available.",
            "type": "object"
          },
          "title": {
            "description": "Headline title.",
            "type": "string"
          },
          "topic": {
            "description": "Assigned topic bucket.",
            "type": "string"
          },
          "url": {
            "description": "Publisher article URL.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "type": "array"
    },
    "limits": {
      "additionalProperties": true,
      "description": "Published caps for this route.",
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized request filters and caps.",
      "type": "object"
    },
    "success": {
      "description": "True when headline search completed.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega tool metadata.",
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "feed",
    "count",
    "headlines",
    "limits",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/news/morning-briefing
$0.03 default
Description

Build a source-neutral morning briefing from managed public news signals, grouped into agent-ready sections such as global news, markets, AI/technology, crypto, and science with citations and caps.

Pricing
$0.03 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "focus": {
      "description": "Optional focus phrase for the briefing, such as AI, crypto, markets, elections, or a company name.",
      "maxLength": 160,
      "type": "string"
    },
    "hours": {
      "default": 12,
      "description": "Lookback window in hours. Defaults to the last 12 hours and is capped at 24.",
      "maximum": 24,
      "minimum": 1,
      "type": "integer"
    },
    "includeCitations": {
      "default": true,
      "description": "Set false to omit the flattened citation list while keeping URLs on section items.",
      "type": "boolean"
    },
    "maxItemsPerSection": {
      "default": 4,
      "description": "Maximum normalized headline rows returned in each briefing section.",
      "maximum": 8,
      "minimum": 1,
      "type": "integer"
    },
    "topics": {
      "description": "Optional topic buckets to emphasize. Defaults to news, business, tech, and science. Use all to let AgentBodega select from the full index.",
      "items": {
        "description": "Topics item filter for Morning Briefing. Accepted values: \"all\", \"tech\", \"news\", \"business\", \"science\", \"gaming\", \"culture\", \"politics\", \"sports\". Constraints: accepted values: \"all\", \"tech\", \"news\", \"business\", \"science\", \"gaming\", \"culture\", \"politics\", \"sports\".",
        "enum": [
          "all",
          "tech",
          "news",
          "business",
          "science",
          "gaming",
          "culture",
          "politics",
          "sports"
        ],
        "type": "string"
      },
      "maxItems": 6,
      "type": "array"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "briefing": {
      "additionalProperties": true,
      "description": "High-level bundle summary, ranking/diversity policy, section count, item count, and source-disclosure policy.",
      "type": "object"
    },
    "checkedAt": {
      "description": "Server-side ISO timestamp for the briefing.",
      "type": "string"
    },
    "citations": {
      "description": "Flattened citation list when includeCitations is true.",
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "limits": {
      "additionalProperties": true,
      "description": "Published caps for this bundle route.",
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized request filters and caps.",
      "type": "object"
    },
    "sections": {
      "description": "Briefing sections grouped by agent-relevant intent.",
      "items": {
        "additionalProperties": true,
        "properties": {
          "count": {
            "description": "Number of items in this section.",
            "type": "integer"
          },
          "id": {
            "description": "Stable section id.",
            "type": "string"
          },
          "items": {
            "description": "Normalized headline rows with publisher article URLs.",
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "ranking": {
            "additionalProperties": true,
            "description": "Selection policy used for this section.",
            "type": "object"
          },
          "summary": {
            "description": "One-line summary built from the section's highest-ranked diversified items.",
            "type": "string"
          },
          "title": {
            "description": "Human-readable section title.",
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "count",
          "items"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "description": "True when the briefing completed.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega tool metadata.",
      "type": "object"
    },
    "topStories": {
      "description": "Highest-ranked cross-section stories.",
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "briefing",
    "sections",
    "topStories",
    "limits",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/outdoor-recreation-availability
$0.0057 default
Description

Check live public recreation availability for campgrounds, campsites, permits, lotteries, tours, and timed-entry resources over a bounded date range.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "endDate": {
      "description": "End date in YYYY-MM-DD. For campgrounds this is the checkout date; returned availability covers nights before checkout.",
      "format": "date",
      "type": "string"
    },
    "entityId": {
      "description": "Optional known facility, campsite, permit, or timed-entry id. Skips name resolution when supplied.",
      "type": "string"
    },
    "entityType": {
      "description": "Optional known resource type. URLs usually imply this automatically.",
      "enum": [
        "campground",
        "campsite",
        "permit",
        "timedentry",
        "timedentry_tour"
      ],
      "type": "string"
    },
    "filters": {
      "additionalProperties": false,
      "description": "Filters object for configuring Outdoor Recreation Availability Check.",
      "properties": {
        "accessibility": {
          "description": "Set true to enable accessibility behavior for Outdoor Recreation Availability Check.",
          "type": "boolean"
        },
        "availableOnly": {
          "default": true,
          "description": "Set true to enable available only behavior for Outdoor Recreation Availability Check. Constraints: default: true.",
          "type": "boolean"
        },
        "electric": {
          "description": "Set true to enable electric behavior for Outdoor Recreation Availability Check.",
          "type": "boolean"
        },
        "equipment": {
          "description": "Equipment name to match in permitted equipment, such as RV or tent.",
          "type": "string"
        },
        "groupSize": {
          "description": "Group Size numeric value for Outdoor Recreation Availability Check. Constraints: min: 1.",
          "minimum": 1,
          "type": "integer"
        },
        "loop": {
          "description": "Loop value for Outdoor Recreation Availability Check.",
          "type": "string"
        },
        "petsAllowed": {
          "description": "Set true to enable pets allowed behavior for Outdoor Recreation Availability Check.",
          "type": "boolean"
        },
        "rvLengthFt": {
          "description": "Rv Length Ft numeric value for Outdoor Recreation Availability Check. Constraints: min: 1.",
          "minimum": 1,
          "type": "integer"
        },
        "siteType": {
          "description": "Campground site type filter, such as tent only, RV, group, or standard.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "includeMetadata": {
      "default": true,
      "description": "For campgrounds/campsites, include site/facility metadata such as equipment, accessibility, pet policy, and fees when available.",
      "type": "boolean"
    },
    "isLottery": {
      "default": false,
      "description": "For permits, request lottery quota/application state instead of post-draw/walk-up availability.",
      "type": "boolean"
    },
    "limit": {
      "default": 20,
      "description": "Maximum matching sites, divisions, or slots to return.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "resource": {
      "description": "Outdoor recreation resource name or canonical reservation URL. Supports campground, campsite, permit, lottery, timed-entry, and tour resources.",
      "type": "string"
    },
    "startDate": {
      "description": "Start date in YYYY-MM-DD. For campgrounds this is the check-in date.",
      "format": "date",
      "type": "string"
    },
    "state": {
      "description": "Optional state filter for name resolution, such as CA or California.",
      "type": "string"
    }
  },
  "required": [
    "resource",
    "startDate",
    "endDate"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "divisions": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "kind": {
      "enum": [
        "campground",
        "campsite",
        "permit",
        "timedentry",
        "timedentry_tour"
      ],
      "type": "string"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "resolved": {
      "additionalProperties": true,
      "type": "object"
    },
    "sites": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "slots": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "kind",
    "requested",
    "resolved",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/rental-listing-search
$0.0057 default
Description

Find public rental listings by market resource id, rental category, price, bedrooms, bathrooms, and result limit; returns normalized rental/building records without collection links.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "bathrooms": {
      "description": "Comma-separated bathroom filter, such as 1,1.5,2.",
      "type": "string"
    },
    "bedrooms": {
      "description": "Comma-separated bedroom filter, such as 1,2,3.",
      "type": "string"
    },
    "limit": {
      "default": 25,
      "description": "Limit numeric value for Rental Listing Search. Constraints: default: 25; min: 1; max: 100.",
      "maximum": 100,
      "minimum": 1,
      "type": "integer"
    },
    "maxPrice": {
      "description": "Max Price numeric value for Rental Listing Search. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "minPrice": {
      "description": "Min Price numeric value for Rental Listing Search. Constraints: min: 0.",
      "minimum": 0,
      "type": "integer"
    },
    "orderBy": {
      "default": "score",
      "description": "Order By filter for Rental Listing Search. Accepted values: \"score\", \"recencyTime\", \"price\". Constraints: accepted values: \"score\", \"recencyTime\", \"price\"; default: \"score\".",
      "enum": [
        "score",
        "recencyTime",
        "price"
      ],
      "type": "string"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "resourceId": {
      "description": "Market resource slug or id, such as san-francisco-ca, new-york-ny, brooklyn-new-york-ny, or 94110-ca.",
      "type": "string"
    },
    "searchSlug": {
      "default": "apartments-for-rent",
      "description": "Rental search slug, such as apartments-for-rent, houses-for-rent, condos-for-rent, townhomes-for-rent, or rooms-for-rent.",
      "type": "string"
    }
  },
  "required": [
    "resourceId"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/school-quality-rating
$0.0057 default
Description

Look up public school rating data by school name/city/state, returning rating, grades, enrollment, district, address, and ids.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "city": {
      "description": "City value for School Quality Rating Lookup.",
      "type": "string"
    },
    "includeCatchment": {
      "default": false,
      "description": "Include catchment GeoJSON when present. Large polygons are omitted by default.",
      "type": "boolean"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "schoolName": {
      "description": "School name to resolve.",
      "type": "string"
    },
    "schoolUrl": {
      "description": "Optional school detail URL. Prefer schoolName/city/state for whitelabeled calls.",
      "format": "uri",
      "type": "string"
    },
    "state": {
      "description": "State value for School Quality Rating Lookup.",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/us-weather-forecast
$0.0057 default
Description

Return a US weather forecast for a point by latitude/longitude, ZIP code, or city/state, including current observation, hourly forecast, multi-day periods, alerts, and grid metadata.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "city": {
      "description": "US city name. Pair with state for best geocoding.",
      "type": "string"
    },
    "dailyLimit": {
      "default": 14,
      "description": "Maximum multi-day forecast periods to return.",
      "maximum": 14,
      "minimum": 1,
      "type": "integer"
    },
    "hourlyLimit": {
      "default": 24,
      "description": "Maximum hourly periods to return.",
      "maximum": 72,
      "minimum": 1,
      "type": "integer"
    },
    "includeAlerts": {
      "default": true,
      "description": "Fetch active watches, warnings, and advisories for the point.",
      "type": "boolean"
    },
    "includeCurrent": {
      "default": true,
      "description": "Fetch the nearest station's latest observation.",
      "type": "boolean"
    },
    "includeHourly": {
      "default": true,
      "description": "Fetch the hourly forecast.",
      "type": "boolean"
    },
    "includeOffice": {
      "default": false,
      "description": "Fetch forecast-center metadata such as name, phone, and email when available.",
      "type": "boolean"
    },
    "lat": {
      "description": "Latitude for a US point. Must be paired with lon.",
      "maximum": 90,
      "minimum": -90,
      "type": "number"
    },
    "location": {
      "description": "Free-form US place query when lat/lon, zip, or city/state are not supplied.",
      "type": "string"
    },
    "lon": {
      "description": "Longitude for a US point. Must be paired with lat.",
      "maximum": 180,
      "minimum": -180,
      "type": "number"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "state": {
      "description": "US state name or two-letter abbreviation for city lookup.",
      "type": "string"
    },
    "zip": {
      "description": "US ZIP code to geocode before forecast lookup.",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/public-data/volunteer-opportunity-search
$0.0057 default
Description

Search public volunteer opportunities by query, cause, remote/local mode, lat/lon, radius, page, and result limit.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "categories": {
      "description": "Cause/category values, such as ANIMALS, EDUCATION, HEALTH_MEDICINE, or ENVIRONMENT.",
      "items": {
        "description": "Categories item value for Volunteer Opportunity Search.",
        "type": "string"
      },
      "maxItems": 8,
      "type": "array"
    },
    "lat": {
      "description": "Lat numeric value for Volunteer Opportunity Search.",
      "type": "number"
    },
    "limit": {
      "default": 20,
      "description": "Limit numeric value for Volunteer Opportunity Search. Constraints: default: 20; min: 1; max: 100.",
      "maximum": 100,
      "minimum": 1,
      "type": "integer"
    },
    "lon": {
      "description": "Lon numeric value for Volunteer Opportunity Search.",
      "type": "number"
    },
    "opportunityUrl": {
      "description": "Optional direct opportunity URL. Prefer query/location filters for whitelabeled calls.",
      "format": "uri",
      "type": "string"
    },
    "page": {
      "default": 0,
      "description": "Page numeric value for Volunteer Opportunity Search. Constraints: default: 0; min: 0; max: 100.",
      "maximum": 100,
      "minimum": 0,
      "type": "integer"
    },
    "proxiesSx": {
      "additionalProperties": false,
      "description": "Optional Proxies.sx egress hint for services that need mobile/residential fetches. Pass true for default US mobile egress, or an object with enabled, country, session, and rotation. Credentials and proxy URLs are never accepted from callers.",
      "properties": {
        "country": {
          "default": "US",
          "description": "Two-letter country code for the Proxies.sx pool, for example US.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "enabled": {
          "default": true,
          "description": "Set false to force direct Worker egress when service-level Proxies.sx default routing is enabled.",
          "type": "boolean"
        },
        "pool": {
          "default": "mobile",
          "description": "Optional pool preference. mobile maps to the Proxies.sx mbl pool, residential maps to peer, and any lets the gateway choose.",
          "enum": [
            "mobile",
            "residential",
            "any"
          ],
          "type": "string"
        },
        "reason": {
          "description": "Optional caller note for internal observability, such as blocked-direct-worker-egress.",
          "maxLength": 160,
          "type": "string"
        },
        "rotation": {
          "default": "sticky",
          "description": "Rotation mode requested from the runner. sticky keeps the same session; hard asks for a fresh mobile IP.",
          "enum": [
            "sticky",
            "hard",
            "auto5",
            "auto10",
            "auto20",
            "auto60",
            "ondemand"
          ],
          "type": "string"
        },
        "session": {
          "description": "Optional sticky-session key. Use stable, non-secret text when you need repeated calls to keep the same mobile identity.",
          "maxLength": 64,
          "type": "string"
        }
      },
      "type": [
        "boolean",
        "object"
      ]
    },
    "query": {
      "description": "Search text.",
      "type": "string"
    },
    "radiusMiles": {
      "default": 25,
      "description": "Radius Miles numeric value for Volunteer Opportunity Search. Constraints: default: 25; min: 1; max: 250.",
      "maximum": 250,
      "minimum": 1,
      "type": "number"
    },
    "remote": {
      "description": "Filter for remote/virtual opportunities.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "egress": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/real-estate/intelligence
$0.86 default
Description

Turn up to 100 current public home or rental listings into a deterministic market report with exact ZIP and min/max price, bedroom, bathroom, and square-foot filters; price bands; value-position quadrants; inventory signals; cohort context; five decision lenses; anomaly review flags; a ranked shortlist; confidence; limitations; and optional Markdown. This report-only product returns aggregates and shortlist evidence, not every analyzed row. Requires market or zipCode and at least five usable priced listings; failed or insufficient runs are not settled.

Pricing
$0.86 default
Request schema
{
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "market"
      ]
    },
    {
      "required": [
        "zipCode"
      ]
    }
  ],
  "description": "Build a current-market report from at least five unique, priced public listings. Provide market, zipCode, or both. The service fetches up to 100 rows, verifies requested filters against normalized fields, and does not settle payment when there is not enough usable evidence. Full analyzed evidence rows are sold only by the fixed-price evidence-bundle route.",
  "properties": {
    "bathsMax": {
      "description": "Maximum bathrooms. Listings without a verifiable bathroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "number"
    },
    "bathsMin": {
      "description": "Minimum bathrooms. Listings without a verifiable bathroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "number"
    },
    "bedrooms": {
      "description": "Rental bedroom filter used for apartment-market reports.",
      "oneOf": [
        {
          "enum": [
            "any",
            "studio",
            "1",
            "2",
            "3",
            "4",
            "5+"
          ],
          "type": "string"
        },
        {
          "maximum": 5,
          "minimum": 0,
          "type": "integer"
        }
      ]
    },
    "bedsMax": {
      "description": "Maximum bedrooms. Listings without a verifiable bedroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "integer"
    },
    "bedsMin": {
      "description": "Minimum bedrooms. Listings without a verifiable bedroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "integer"
    },
    "daysOnMarket": {
      "default": "",
      "description": "Optional maximum listing-age bucket supported by home-sale searches.",
      "enum": [
        "",
        "1",
        "7",
        "14",
        "30",
        "90",
        "6m",
        "12m",
        "24m",
        "36m"
      ],
      "type": "string"
    },
    "homeTypes": {
      "description": "Optional home-type filters for home-sale searches.",
      "items": {
        "description": "Home Types item filter for Real Estate Market Intelligence Report. Accepted values: \"houses\", \"townhomes\", \"multifamily\", \"condos\", \"land\", \"apartments\", \"manufactured\". Constraints: accepted values: \"houses\", \"townhomes\", \"multifamily\", \"condos\", \"land\", \"apartments\", \"manufactured\".",
        "enum": [
          "houses",
          "townhomes",
          "multifamily",
          "condos",
          "land",
          "apartments",
          "manufactured"
        ],
        "type": "string"
      },
      "maxItems": 7,
      "type": "array"
    },
    "includeMarkdown": {
      "default": true,
      "description": "Include a ready-to-render Markdown version alongside the structured report JSON.",
      "type": "boolean"
    },
    "listingType": {
      "default": "for_sale",
      "description": "Current inventory class to analyze. Historical sold-comparable analysis is not included in this version.",
      "enum": [
        "for_sale",
        "for_rent",
        "foreclosure"
      ],
      "type": "string"
    },
    "market": {
      "description": "City or neighborhood to analyze, such as Houston, TX or Montrose Houston TX. May be omitted when zipCode is provided.",
      "maxLength": 180,
      "minLength": 2,
      "type": "string"
    },
    "maxListings": {
      "default": 100,
      "description": "Maximum current listings to ingest before deduplication and verification. At least five usable listings are required for a paid report.",
      "maximum": 100,
      "minimum": 10,
      "type": "integer"
    },
    "maxPages": {
      "default": 1,
      "description": "Maximum rendered result pages for apartment-market reports.",
      "maximum": 2,
      "minimum": 1,
      "type": "integer"
    },
    "maxRent": {
      "description": "Maximum monthly rent in USD. If omitted, priceMax is reused for rental reports.",
      "minimum": 0,
      "type": "integer"
    },
    "objective": {
      "default": "balanced",
      "description": "Ranking objective for the evidence-backed shortlist. balanced combines price, price per square foot, recency, and space when fields are available.",
      "enum": [
        "balanced",
        "value",
        "low-price",
        "newest",
        "space"
      ],
      "type": "string"
    },
    "priceMax": {
      "description": "Maximum listing price or monthly rent in USD. Listings without a verifiable price are excluded.",
      "minimum": 0,
      "type": "integer"
    },
    "priceMin": {
      "description": "Minimum listing price in USD. Listings without a verifiable price are excluded.",
      "minimum": 0,
      "type": "integer"
    },
    "propertyType": {
      "description": "Rental property type used for apartment-market reports.",
      "enum": [
        "apartments",
        "houses",
        "townhomes",
        "condos"
      ],
      "type": "string"
    },
    "shortlistLimit": {
      "default": 10,
      "description": "Maximum ranked listings to include in the shortlist.",
      "maximum": 15,
      "minimum": 3,
      "type": "integer"
    },
    "sortBy": {
      "default": "newest",
      "description": "Managed-source collection order before AgentBodega computes its own shortlist ranking.",
      "enum": [
        "newest",
        "relevance",
        "pricea",
        "priced",
        "beds",
        "baths",
        "size",
        "lot",
        "zest"
      ],
      "type": "string"
    },
    "sqftMax": {
      "description": "Maximum interior square feet. Listings without verifiable square footage are excluded when this filter is set.",
      "minimum": 0,
      "type": "integer"
    },
    "sqftMin": {
      "description": "Minimum interior square feet. Listings without verifiable square footage are excluded when this filter is set.",
      "minimum": 0,
      "type": "integer"
    },
    "zipCode": {
      "description": "Exact five-digit ZIP to analyze. It narrows collection where supported and excludes returned rows with missing or different postal codes.",
      "pattern": "^\\d{5}$",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "listings": {
      "description": "All normalized analyzed evidence rows only for the fixed-price evidence-bundle route; empty for the report-only route.",
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "report": {
      "additionalProperties": true,
      "properties": {
        "benchmarks": {
          "additionalProperties": false,
          "properties": {
            "bedrooms": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "days_on_market": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "list_price_usd": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "price_per_sqft_usd": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "square_feet": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            }
          },
          "required": [
            "list_price_usd",
            "square_feet",
            "price_per_sqft_usd",
            "days_on_market",
            "bedrooms"
          ],
          "type": "object"
        },
        "data_quality": {
          "additionalProperties": true,
          "description": "Confidence label, field coverage percentages, warnings, and limitations.",
          "type": "object"
        },
        "decision_lenses": {
          "additionalProperties": true,
          "description": "Top current-sample candidates under balanced, value, low-price, newest, and space ranking objectives.",
          "type": "object"
        },
        "evidence_manifest": {
          "additionalProperties": true,
          "description": "Declares analyzed rows, returned rows, evidence scope, shortlist count, and enforced cap.",
          "type": "object"
        },
        "executive_summary": {
          "description": "Deterministic summary grounded in the returned sample metrics.",
          "type": "string"
        },
        "insights": {
          "description": "Concise evidence-backed observations derived from the current sample without generative inference.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "markdown": {
          "description": "Optional ready-to-render report.",
          "type": "string"
        },
        "market_positions": {
          "additionalProperties": true,
          "description": "Listings grouped by whether price and price per square foot sit above or below current sample medians.",
          "type": "object"
        },
        "market_signals": {
          "additionalProperties": true,
          "description": "Counts for below-median value candidates, fresh inventory, older inventory, and supporting field coverage.",
          "type": "object"
        },
        "methodology": {
          "additionalProperties": true,
          "description": "Transparent calculation and interpretation boundaries.",
          "type": "object"
        },
        "outliers": {
          "additionalProperties": true,
          "description": "Review flags for unusually low or high price and price per square foot using a transparent IQR rule.",
          "type": "object"
        },
        "price_bands": {
          "additionalProperties": true,
          "description": "Current inventory split across sample quartile price bands with counts, shares, and USD boundaries.",
          "type": "object"
        },
        "sample": {
          "additionalProperties": true,
          "description": "Raw, duplicate, unique, eligible, and excluded row counts.",
          "type": "object"
        },
        "segments": {
          "additionalProperties": true,
          "description": "Inventory groups by home type, postal code, and bedroom count.",
          "type": "object"
        },
        "shortlist": {
          "description": "Listings ranked against the requested objective and the current report sample.",
          "items": {
            "additionalProperties": true,
            "properties": {
              "address": {
                "type": "string"
              },
              "baths": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "beds": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "cohort": {
                "additionalProperties": true,
                "description": "Context against listings with the same normalized home type and bedroom count.",
                "type": [
                  "object",
                  "null"
                ]
              },
              "days_on_market": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "listing_id": {
                "type": "string"
              },
              "listing_url": {
                "type": "string"
              },
              "price_per_sqft_usd": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "price_per_sqft_vs_market_pct": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "price_usd": {
                "type": "number"
              },
              "price_vs_market_pct": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "rank": {
                "type": "integer"
              },
              "reasons": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "score": {
                "type": "number"
              },
              "sqft": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "rank",
              "score",
              "listing_id",
              "address",
              "price_usd",
              "reasons"
            ],
            "type": "object"
          },
          "type": "array"
        },
        "title": {
          "type": "string"
        }
      },
      "required": [
        "title",
        "executive_summary",
        "insights",
        "sample",
        "benchmarks",
        "price_bands",
        "market_positions",
        "market_signals",
        "segments",
        "decision_lenses",
        "shortlist",
        "outliers",
        "evidence_manifest",
        "data_quality",
        "methodology"
      ],
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized report request and enforced limits.",
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "description": "Source-neutral routing and freshness metadata.",
      "type": "object"
    },
    "success": {
      "description": "True only when enough evidence was collected to deliver the report.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega product identity and department.",
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "report",
    "listings",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/real-estate/intelligence/bundle
$0.98 default
Description

Return the complete $0.75 real-estate intelligence report plus every normalized listing that passed the requested exact ZIP and min/max price, bedroom, bathroom, square-foot, property-type, and freshness filters, capped at 100 rows. The fixed $0.85 bundle costs less than purchasing the report and enough separate 20-row listing-search calls, while the paid route itself controls evidence access so a request flag cannot obtain bundle data at the report-only price.

Pricing
$0.98 default
Request schema
{
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "market"
      ]
    },
    {
      "required": [
        "zipCode"
      ]
    }
  ],
  "description": "Build a current-market report from at least five unique, priced public listings. Provide market, zipCode, or both. The service fetches up to 100 rows, verifies requested filters against normalized fields, and does not settle payment when there is not enough usable evidence. Full analyzed evidence rows are sold only by the fixed-price evidence-bundle route.",
  "properties": {
    "bathsMax": {
      "description": "Maximum bathrooms. Listings without a verifiable bathroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "number"
    },
    "bathsMin": {
      "description": "Minimum bathrooms. Listings without a verifiable bathroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "number"
    },
    "bedrooms": {
      "description": "Rental bedroom filter used for apartment-market reports.",
      "oneOf": [
        {
          "enum": [
            "any",
            "studio",
            "1",
            "2",
            "3",
            "4",
            "5+"
          ],
          "type": "string"
        },
        {
          "maximum": 5,
          "minimum": 0,
          "type": "integer"
        }
      ]
    },
    "bedsMax": {
      "description": "Maximum bedrooms. Listings without a verifiable bedroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "integer"
    },
    "bedsMin": {
      "description": "Minimum bedrooms. Listings without a verifiable bedroom count are excluded when this filter is set.",
      "maximum": 10,
      "minimum": 0,
      "type": "integer"
    },
    "daysOnMarket": {
      "default": "",
      "description": "Optional maximum listing-age bucket supported by home-sale searches.",
      "enum": [
        "",
        "1",
        "7",
        "14",
        "30",
        "90",
        "6m",
        "12m",
        "24m",
        "36m"
      ],
      "type": "string"
    },
    "homeTypes": {
      "description": "Optional home-type filters for home-sale searches.",
      "items": {
        "description": "Home Types item filter for Real Estate Intelligence + Evidence Bundle. Accepted values: \"houses\", \"townhomes\", \"multifamily\", \"condos\", \"land\", \"apartments\", \"manufactured\". Constraints: accepted values: \"houses\", \"townhomes\", \"multifamily\", \"condos\", \"land\", \"apartments\", \"manufactured\".",
        "enum": [
          "houses",
          "townhomes",
          "multifamily",
          "condos",
          "land",
          "apartments",
          "manufactured"
        ],
        "type": "string"
      },
      "maxItems": 7,
      "type": "array"
    },
    "includeMarkdown": {
      "default": true,
      "description": "Include a ready-to-render Markdown version alongside the structured report JSON.",
      "type": "boolean"
    },
    "listingType": {
      "default": "for_sale",
      "description": "Current inventory class to analyze. Historical sold-comparable analysis is not included in this version.",
      "enum": [
        "for_sale",
        "for_rent",
        "foreclosure"
      ],
      "type": "string"
    },
    "market": {
      "description": "City or neighborhood to analyze, such as Houston, TX or Montrose Houston TX. May be omitted when zipCode is provided.",
      "maxLength": 180,
      "minLength": 2,
      "type": "string"
    },
    "maxListings": {
      "default": 100,
      "description": "Maximum current listings to ingest before deduplication and verification. At least five usable listings are required for a paid report.",
      "maximum": 100,
      "minimum": 10,
      "type": "integer"
    },
    "maxPages": {
      "default": 1,
      "description": "Maximum rendered result pages for apartment-market reports.",
      "maximum": 2,
      "minimum": 1,
      "type": "integer"
    },
    "maxRent": {
      "description": "Maximum monthly rent in USD. If omitted, priceMax is reused for rental reports.",
      "minimum": 0,
      "type": "integer"
    },
    "objective": {
      "default": "balanced",
      "description": "Ranking objective for the evidence-backed shortlist. balanced combines price, price per square foot, recency, and space when fields are available.",
      "enum": [
        "balanced",
        "value",
        "low-price",
        "newest",
        "space"
      ],
      "type": "string"
    },
    "priceMax": {
      "description": "Maximum listing price or monthly rent in USD. Listings without a verifiable price are excluded.",
      "minimum": 0,
      "type": "integer"
    },
    "priceMin": {
      "description": "Minimum listing price in USD. Listings without a verifiable price are excluded.",
      "minimum": 0,
      "type": "integer"
    },
    "propertyType": {
      "description": "Rental property type used for apartment-market reports.",
      "enum": [
        "apartments",
        "houses",
        "townhomes",
        "condos"
      ],
      "type": "string"
    },
    "shortlistLimit": {
      "default": 10,
      "description": "Maximum ranked listings to include in the shortlist.",
      "maximum": 15,
      "minimum": 3,
      "type": "integer"
    },
    "sortBy": {
      "default": "newest",
      "description": "Managed-source collection order before AgentBodega computes its own shortlist ranking.",
      "enum": [
        "newest",
        "relevance",
        "pricea",
        "priced",
        "beds",
        "baths",
        "size",
        "lot",
        "zest"
      ],
      "type": "string"
    },
    "sqftMax": {
      "description": "Maximum interior square feet. Listings without verifiable square footage are excluded when this filter is set.",
      "minimum": 0,
      "type": "integer"
    },
    "sqftMin": {
      "description": "Minimum interior square feet. Listings without verifiable square footage are excluded when this filter is set.",
      "minimum": 0,
      "type": "integer"
    },
    "zipCode": {
      "description": "Exact five-digit ZIP to analyze. It narrows collection where supported and excludes returned rows with missing or different postal codes.",
      "pattern": "^\\d{5}$",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "listings": {
      "description": "All normalized analyzed evidence rows only for the fixed-price evidence-bundle route; empty for the report-only route.",
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "report": {
      "additionalProperties": true,
      "properties": {
        "benchmarks": {
          "additionalProperties": false,
          "properties": {
            "bedrooms": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "days_on_market": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "list_price_usd": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "price_per_sqft_usd": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            },
            "square_feet": {
              "additionalProperties": false,
              "description": "Distribution summary computed from the eligible listing sample.",
              "properties": {
                "count": {
                  "description": "Number of listings with a usable value for this metric.",
                  "type": "integer"
                },
                "max": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "mean": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "median": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "min": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p25": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "p75": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              },
              "required": [
                "count",
                "min",
                "p25",
                "median",
                "mean",
                "p75",
                "max"
              ],
              "type": "object"
            }
          },
          "required": [
            "list_price_usd",
            "square_feet",
            "price_per_sqft_usd",
            "days_on_market",
            "bedrooms"
          ],
          "type": "object"
        },
        "data_quality": {
          "additionalProperties": true,
          "description": "Confidence label, field coverage percentages, warnings, and limitations.",
          "type": "object"
        },
        "decision_lenses": {
          "additionalProperties": true,
          "description": "Top current-sample candidates under balanced, value, low-price, newest, and space ranking objectives.",
          "type": "object"
        },
        "evidence_manifest": {
          "additionalProperties": true,
          "description": "Declares analyzed rows, returned rows, evidence scope, shortlist count, and enforced cap.",
          "type": "object"
        },
        "executive_summary": {
          "description": "Deterministic summary grounded in the returned sample metrics.",
          "type": "string"
        },
        "insights": {
          "description": "Concise evidence-backed observations derived from the current sample without generative inference.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "markdown": {
          "description": "Optional ready-to-render report.",
          "type": "string"
        },
        "market_positions": {
          "additionalProperties": true,
          "description": "Listings grouped by whether price and price per square foot sit above or below current sample medians.",
          "type": "object"
        },
        "market_signals": {
          "additionalProperties": true,
          "description": "Counts for below-median value candidates, fresh inventory, older inventory, and supporting field coverage.",
          "type": "object"
        },
        "methodology": {
          "additionalProperties": true,
          "description": "Transparent calculation and interpretation boundaries.",
          "type": "object"
        },
        "outliers": {
          "additionalProperties": true,
          "description": "Review flags for unusually low or high price and price per square foot using a transparent IQR rule.",
          "type": "object"
        },
        "price_bands": {
          "additionalProperties": true,
          "description": "Current inventory split across sample quartile price bands with counts, shares, and USD boundaries.",
          "type": "object"
        },
        "sample": {
          "additionalProperties": true,
          "description": "Raw, duplicate, unique, eligible, and excluded row counts.",
          "type": "object"
        },
        "segments": {
          "additionalProperties": true,
          "description": "Inventory groups by home type, postal code, and bedroom count.",
          "type": "object"
        },
        "shortlist": {
          "description": "Listings ranked against the requested objective and the current report sample.",
          "items": {
            "additionalProperties": true,
            "properties": {
              "address": {
                "type": "string"
              },
              "baths": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "beds": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "cohort": {
                "additionalProperties": true,
                "description": "Context against listings with the same normalized home type and bedroom count.",
                "type": [
                  "object",
                  "null"
                ]
              },
              "days_on_market": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "listing_id": {
                "type": "string"
              },
              "listing_url": {
                "type": "string"
              },
              "price_per_sqft_usd": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "price_per_sqft_vs_market_pct": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "price_usd": {
                "type": "number"
              },
              "price_vs_market_pct": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "rank": {
                "type": "integer"
              },
              "reasons": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "score": {
                "type": "number"
              },
              "sqft": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "rank",
              "score",
              "listing_id",
              "address",
              "price_usd",
              "reasons"
            ],
            "type": "object"
          },
          "type": "array"
        },
        "title": {
          "type": "string"
        }
      },
      "required": [
        "title",
        "executive_summary",
        "insights",
        "sample",
        "benchmarks",
        "price_bands",
        "market_positions",
        "market_signals",
        "segments",
        "decision_lenses",
        "shortlist",
        "outliers",
        "evidence_manifest",
        "data_quality",
        "methodology"
      ],
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "description": "Normalized report request and enforced limits.",
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "description": "Source-neutral routing and freshness metadata.",
      "type": "object"
    },
    "success": {
      "description": "True only when enough evidence was collected to deliver the report.",
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "description": "AgentBodega product identity and department.",
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "report",
    "listings",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/real-estate/listings/search
$0.06 default
Description

Search current public home and rental listings by city, neighborhood, exact ZIP, listing type, price range, bedroom range, bathroom range, square footage, amenities, URL, address, or property id. Search mode requires market or zipCode; URL mode requires searchUrls; lookup mode requires addresses, zpids, or propertyIds. Advertised filters are rechecked against normalized rows before results are returned.

Pricing
$0.06 default
Request schema
{
  "additionalProperties": false,
  "anyOf": [
    {
      "anyOf": [
        {
          "required": [
            "market"
          ]
        },
        {
          "required": [
            "zipCode"
          ]
        }
      ],
      "properties": {
        "mode": {
          "const": "search"
        }
      },
      "title": "Market search"
    },
    {
      "properties": {
        "mode": {
          "const": "url"
        }
      },
      "required": [
        "searchUrls"
      ],
      "title": "URL search"
    },
    {
      "anyOf": [
        {
          "required": [
            "addresses"
          ]
        },
        {
          "required": [
            "zpids"
          ]
        },
        {
          "required": [
            "propertyIds"
          ]
        }
      ],
      "properties": {
        "mode": {
          "const": "lookup"
        }
      },
      "title": "Property lookup"
    }
  ],
  "description": "Choose one mode and provide its required selector: search requires market or zipCode; url requires searchUrls; lookup requires addresses, zpids, or propertyIds. Search filters are rechecked against normalized rows before results are returned.",
  "properties": {
    "addresses": {
      "description": "Addresses for lookup mode.",
      "items": {
        "description": "Addresses item value for Real Estate Listing Search.",
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    },
    "amenities": {
      "description": "Requested amenity filters sent to providers that expose them. Availability depends on the selected source's public listing fields.",
      "items": {
        "description": "Amenities item filter for Real Estate Listing Search. Accepted values: \"pool\", \"ac\", \"waterfront\", \"single-story\", \"garage\", \"basement\", \"3d-tour\". Constraints: accepted values: \"pool\", \"ac\", \"waterfront\", \"single-story\", \"garage\", \"basement\", \"3d-tour\".",
        "enum": [
          "pool",
          "ac",
          "waterfront",
          "single-story",
          "garage",
          "basement",
          "3d-tour"
        ],
        "type": "string"
      },
      "maxItems": 7,
      "type": "array"
    },
    "bathsMax": {
      "description": "Maximum bathrooms. Half-bath values are accepted.",
      "maximum": 10,
      "minimum": 0,
      "type": "number"
    },
    "bathsMin": {
      "description": "Minimum bathrooms. Half-bath values are accepted.",
      "maximum": 10,
      "minimum": 0,
      "type": "number"
    },
    "bedrooms": {
      "description": "Rental bedroom filter used by the Apartments-backed provider.",
      "oneOf": [
        {
          "enum": [
            "any",
            "studio",
            "1",
            "2",
            "3",
            "4",
            "5+"
          ],
          "type": "string"
        },
        {
          "maximum": 5,
          "minimum": 0,
          "type": "integer"
        }
      ]
    },
    "bedsMax": {
      "description": "Maximum bedrooms. Aggregate rental rows qualify when their advertised bedroom range overlaps this boundary.",
      "maximum": 10,
      "minimum": 0,
      "type": "integer"
    },
    "bedsMin": {
      "description": "Minimum bedrooms. Aggregate rental rows qualify when their advertised bedroom range overlaps this boundary.",
      "maximum": 10,
      "minimum": 0,
      "type": "integer"
    },
    "daysOnMarket": {
      "default": "",
      "description": "Maximum listing-age bucket. Returned rows without a verifiable days-on-market value are excluded when set.",
      "enum": [
        "",
        "1",
        "7",
        "14",
        "30",
        "90",
        "6m",
        "12m",
        "24m",
        "36m"
      ],
      "type": "string"
    },
    "filterToRequestedCity": {
      "description": "Optional exact-city filter for Apartments-backed city searches.",
      "type": "boolean"
    },
    "homeTypes": {
      "description": "Allowed home types. Returned rows without a verifiable matching normalized home type are excluded.",
      "items": {
        "description": "Home Types item filter for Real Estate Listing Search. Accepted values: \"houses\", \"townhomes\", \"multifamily\", \"condos\", \"land\", \"apartments\", \"manufactured\". Constraints: accepted values: \"houses\", \"townhomes\", \"multifamily\", \"condos\", \"land\", \"apartments\", \"manufactured\".",
        "enum": [
          "houses",
          "townhomes",
          "multifamily",
          "condos",
          "land",
          "apartments",
          "manufactured"
        ],
        "type": "string"
      },
      "maxItems": 7,
      "type": "array"
    },
    "includeDetails": {
      "default": false,
      "description": "Fetch detail-page fields such as description, agent/broker fields, photos, price history, and tax history. Detail-enriched calls are capped at 10 rows.",
      "type": "boolean"
    },
    "includeHistory": {
      "default": true,
      "description": "Include price/tax history where the selected provider supports detail extraction.",
      "type": "boolean"
    },
    "includeSchools": {
      "default": true,
      "description": "Include school data where the selected provider supports detail extraction.",
      "type": "boolean"
    },
    "listingType": {
      "default": "for_sale",
      "description": "Listing inventory to search. recently_sold is available only on providers that expose current sold-result pages.",
      "enum": [
        "for_sale",
        "recently_sold",
        "for_rent",
        "foreclosure"
      ],
      "type": "string"
    },
    "locationSlug": {
      "description": "Provider-specific location slug for rental searches when city/state parsing is not enough.",
      "type": "string"
    },
    "lotSizeMax": {
      "description": "Maximum lot size in square feet. Rows without a verifiable lot size are excluded when set.",
      "minimum": 0,
      "type": "integer"
    },
    "lotSizeMin": {
      "description": "Minimum lot size in square feet. Rows without a verifiable lot size are excluded when set.",
      "minimum": 0,
      "type": "integer"
    },
    "market": {
      "description": "City, ZIP, or neighborhood, such as Houston, TX 77008 or Montrose Houston TX. Use zipCode when an exact five-digit postal-code match is required.",
      "type": "string"
    },
    "maxPages": {
      "default": 1,
      "description": "Maximum rendered search pages for the Apartments-backed provider.",
      "maximum": 2,
      "minimum": 1,
      "type": "integer"
    },
    "maxRent": {
      "description": "Maximum monthly rent. If omitted, priceMax is reused for rental searches.",
      "minimum": 0,
      "type": "integer"
    },
    "maxResults": {
      "default": 10,
      "description": "Maximum listing rows to return. Detail-enriched calls are capped at 10 rows.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "mode": {
      "default": "search",
      "description": "Search by market, use one or more listing/search URLs, or look up specific addresses/provider property ids.",
      "enum": [
        "search",
        "url",
        "lookup"
      ],
      "type": "string"
    },
    "petFriendly": {
      "default": false,
      "description": "Rental search filter for pet-friendly listings.",
      "type": "boolean"
    },
    "priceMax": {
      "description": "Maximum listing price or monthly rent in USD.",
      "minimum": 0,
      "type": "integer"
    },
    "priceMin": {
      "description": "Minimum listing price or monthly rent in USD.",
      "minimum": 0,
      "type": "integer"
    },
    "propertyIds": {
      "description": "Provider property ids for lookup mode, currently used by the realtor-backed provider.",
      "items": {
        "description": "Property Ids item value for Real Estate Listing Search.",
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    },
    "propertyType": {
      "description": "Rental property type used by the Apartments-backed provider.",
      "enum": [
        "apartments",
        "houses",
        "townhomes",
        "condos"
      ],
      "type": "string"
    },
    "searchUrls": {
      "description": "Listing or search URLs for url mode.",
      "items": {
        "description": "Search Urls item value for Real Estate Listing Search. Constraints: format: uri.",
        "format": "uri",
        "type": "string"
      },
      "maxItems": 3,
      "type": "array"
    },
    "smartScrape": {
      "default": false,
      "description": "Opt into incremental ingestion by skipping listings already seen by the managed adapter. Leave false for a complete current search result set.",
      "type": "boolean"
    },
    "sortBy": {
      "default": "newest",
      "description": "Managed-source collection order before AgentBodega normalizes and rechecks the requested filters.",
      "enum": [
        "newest",
        "relevance",
        "pricea",
        "priced",
        "beds",
        "baths",
        "size",
        "lot",
        "zest"
      ],
      "type": "string"
    },
    "source": {
      "default": "auto",
      "description": "Optional source preference. auto routes broad home search to Zillow and apartment rental search to Apartments.",
      "enum": [
        "auto",
        "zillow",
        "apartments",
        "realtor"
      ],
      "type": "string"
    },
    "sqftMax": {
      "description": "Maximum interior square feet. Rows without verifiable square footage are excluded when set.",
      "minimum": 0,
      "type": "integer"
    },
    "sqftMin": {
      "description": "Minimum interior square feet. Rows without verifiable square footage are excluded when set.",
      "minimum": 0,
      "type": "integer"
    },
    "state": {
      "description": "Two-letter state hint for rental searches.",
      "maxLength": 2,
      "minLength": 2,
      "type": "string"
    },
    "yearBuiltMax": {
      "description": "Latest accepted construction year. Rows without a verifiable year built are excluded when set.",
      "maximum": 2030,
      "minimum": 1800,
      "type": "integer"
    },
    "yearBuiltMin": {
      "description": "Earliest accepted construction year. Rows without a verifiable year built are excluded when set.",
      "maximum": 2030,
      "minimum": 1800,
      "type": "integer"
    },
    "zipCode": {
      "description": "Exact five-digit ZIP filter for search mode. It narrows collection where supported and is always rechecked against normalized postal_code values.",
      "pattern": "^\\d{5}$",
      "type": "string"
    },
    "zpids": {
      "description": "Zillow property ids for lookup mode.",
      "items": {
        "description": "Zpids item value for Real Estate Listing Search.",
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "filter_summary": {
      "additionalProperties": false,
      "description": "Counts before and after AgentBodega rechecks the requested filters against normalized rows.",
      "properties": {
        "excluded_count": {
          "type": "integer"
        },
        "matched_count": {
          "type": "integer"
        },
        "normalized_count": {
          "type": "integer"
        },
        "returned_count": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result_count": {
      "type": "integer"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "properties": {
          "address": {
            "type": "string"
          },
          "agent": {
            "additionalProperties": true,
            "type": "object"
          },
          "baths": {
            "type": [
              "number",
              "null"
            ]
          },
          "beds": {
            "type": [
              "number",
              "null"
            ]
          },
          "city": {
            "type": "string"
          },
          "days_on_market": {
            "type": [
              "number",
              "null"
            ]
          },
          "description": {
            "type": "string"
          },
          "home_type": {
            "type": "string"
          },
          "image_url": {
            "format": "uri",
            "type": "string"
          },
          "latitude": {
            "type": [
              "number",
              "null"
            ]
          },
          "listing_id": {
            "type": "string"
          },
          "listing_status": {
            "type": "string"
          },
          "listing_url": {
            "format": "uri",
            "type": "string"
          },
          "longitude": {
            "type": [
              "number",
              "null"
            ]
          },
          "lot_sqft": {
            "type": [
              "number",
              "null"
            ]
          },
          "photo_urls": {
            "items": {
              "format": "uri",
              "type": "string"
            },
            "type": "array"
          },
          "postal_code": {
            "type": "string"
          },
          "price_display": {
            "type": "string"
          },
          "price_history": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "price_usd": {
            "type": [
              "number",
              "null"
            ]
          },
          "rent_zestimate_usd": {
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "description": "Managed source class used to normalize the listing.",
            "type": "string"
          },
          "sqft": {
            "type": [
              "number",
              "null"
            ]
          },
          "state": {
            "type": "string"
          },
          "street": {
            "type": "string"
          },
          "tax_assessed_value_usd": {
            "type": [
              "number",
              "null"
            ]
          },
          "tax_history": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "warnings": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "year_built": {
            "type": [
              "number",
              "null"
            ]
          },
          "zestimate_usd": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "source",
          "listing_id",
          "address"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "result_count",
    "results",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/search/link-preview
$0.0057 default
Description

Fetch one public URL and return compact source-neutral preview metadata: title, description, canonical URL, site name, type, image URL when present, and which HTML signals supplied each field.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeImage": {
      "default": true,
      "description": "Set false to omit preview image metadata while still returning title, description, and canonical URL.",
      "type": "boolean"
    },
    "maxBytes": {
      "default": 32768,
      "description": "Maximum response body bytes to read while extracting preview tags.",
      "maximum": 65536,
      "minimum": 1024,
      "type": "integer"
    },
    "timeoutMs": {
      "default": 5000,
      "description": "Fetch timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    },
    "url": {
      "description": "Public HTTP or HTTPS URL to preview. Local, private, credentialed, and non-web URLs are rejected.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "fetched": {
      "additionalProperties": true,
      "type": "object"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "preview": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "signals": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "fetched",
    "preview",
    "signals",
    "limits"
  ],
  "type": "object"
}
POST/api/social-media/catalog
$0.0057 default
Description

Return AgentBodega's Social Media department: configured public social/video data routes plus available and staged coverage families for social, creator, video, audio, ad-library, and UGC research products.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeCoverageMap": {
      "default": true,
      "description": "Include white-labeled Social Media coverage families, including staged platform/product families that are not yet payable resources.",
      "type": "boolean"
    },
    "includeExternalPattern": {
      "default": true,
      "description": "Include read-only X/Twitter product specs. Rows with configured false are staged and are not advertised as payable resources.",
      "type": "boolean"
    },
    "includeSchemas": {
      "default": true,
      "description": "Include full schemas for configured AgentBodega social data endpoints.",
      "type": "boolean"
    },
    "limit": {
      "default": 20,
      "description": "Maximum configured endpoints and pattern rows to return.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "platform": {
      "default": "all",
      "description": "Optional platform or product-family focus. Use x or twitter for X/Twitter, ugc for creator research, ads for ad-library intelligence, or all for the full Social Media department.",
      "enum": [
        "all",
        "x",
        "twitter",
        "tiktok",
        "instagram",
        "facebook",
        "reddit",
        "youtube",
        "linkedin",
        "threads",
        "bluesky",
        "pinterest",
        "twitch",
        "snapchat",
        "github",
        "spotify",
        "soundcloud",
        "rumble",
        "truthsocial",
        "web",
        "amazon",
        "inference",
        "ads",
        "link-in-bio",
        "ugc"
      ],
      "type": "string"
    },
    "query": {
      "description": "Optional text filter matched against platform, endpoint title, category, description, tags, and X/Twitter use cases.",
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "categories": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "department": {
      "additionalProperties": true,
      "type": "object"
    },
    "endpoints": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "nextSteps": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "socialCoveragePattern": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "xTwitterReadOnlyPattern": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "department",
    "endpoints",
    "xTwitterReadOnlyPattern",
    "socialCoveragePattern"
  ],
  "type": "object"
}
POST/api/social-media/x/tweet
$0.02 default
Description

Look up one public X/Twitter post by numeric id or post URL and return normalized text, author, created time, language, and public engagement metrics.

Pricing
$0.02 default
Request schema
{
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "tweetId"
      ]
    },
    {
      "required": [
        "tweetUrl"
      ]
    }
  ],
  "properties": {
    "tweetId": {
      "description": "Numeric public post id. Required unless tweetUrl is supplied.",
      "pattern": "^[0-9]{1,30}$",
      "type": "string"
    },
    "tweetUrl": {
      "description": "Public post URL. Required unless tweetId is supplied.",
      "format": "uri",
      "maxLength": 300,
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "meta": {
      "additionalProperties": true,
      "type": "object"
    },
    "profile": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result_count": {
      "type": "integer"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "tweet": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/social-media/x/tweet-search
$0.07 default
Description

Search public X/Twitter posts with a raw query or bounded structured filters such as words, exact phrase, hashtags, author, mention target, engagement thresholds, and date range.

Pricing
$0.07 default
Request schema
{
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "query"
      ]
    },
    {
      "required": [
        "words"
      ]
    },
    {
      "required": [
        "phrase"
      ]
    },
    {
      "required": [
        "hashtags"
      ]
    },
    {
      "required": [
        "from"
      ]
    }
  ],
  "properties": {
    "anyWords": {
      "description": "Any of these words may match.",
      "items": {
        "description": "Any Words item value for X Post Search. Constraints: max length: 80.",
        "maxLength": 80,
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "from": {
      "description": "Only posts from this username.",
      "maxLength": 80,
      "type": "string"
    },
    "hashtags": {
      "description": "Hashtags to include, with or without #.",
      "items": {
        "description": "Hashtags item value for X Post Search. Constraints: max length: 80.",
        "maxLength": 80,
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "maxResults": {
      "default": 10,
      "description": "Maximum posts to return. Search is capped at 20 per call.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "mentioning": {
      "description": "Only posts mentioning this username.",
      "maxLength": 80,
      "type": "string"
    },
    "minLikes": {
      "description": "Minimum like count.",
      "minimum": 0,
      "type": "integer"
    },
    "minReplies": {
      "description": "Minimum reply count.",
      "minimum": 0,
      "type": "integer"
    },
    "minReposts": {
      "description": "Minimum repost count.",
      "minimum": 0,
      "type": "integer"
    },
    "noneWords": {
      "description": "Words to exclude.",
      "items": {
        "description": "None Words item value for X Post Search. Constraints: max length: 80.",
        "maxLength": 80,
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "phrase": {
      "description": "Exact phrase to include.",
      "maxLength": 160,
      "type": "string"
    },
    "query": {
      "description": "Raw X/Twitter search query. If supplied, structured filter fields are ignored.",
      "maxLength": 500,
      "type": "string"
    },
    "since": {
      "description": "Start date in YYYY-MM-DD.",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "type": "string"
    },
    "to": {
      "description": "Only replies to this username.",
      "maxLength": 80,
      "type": "string"
    },
    "until": {
      "description": "End date in YYYY-MM-DD.",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "type": "string"
    },
    "words": {
      "description": "All words to include.",
      "maxLength": 160,
      "type": "string"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "meta": {
      "additionalProperties": true,
      "type": "object"
    },
    "profile": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result_count": {
      "type": "integer"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "tweet": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/social-media/x/user-profile
$0.03 default
Description

Look up a public X/Twitter profile by username and return normalized account metadata, public metrics, verification state, bio, and profile image metadata.

Pricing
$0.03 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "username": {
      "description": "Public username or profile URL. Leading @ is accepted and normalized.",
      "maxLength": 80,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "username"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "meta": {
      "additionalProperties": true,
      "type": "object"
    },
    "profile": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result_count": {
      "type": "integer"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "tweet": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/social-media/x/user-timeline
$0.06 default
Description

Return recent public posts for a username with normalized post ids, text, author metadata, created time, language, and public engagement metrics.

Pricing
$0.06 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "maxResults": {
      "default": 20,
      "description": "Maximum recent posts to return.",
      "maximum": 100,
      "minimum": 1,
      "type": "integer"
    },
    "username": {
      "description": "Public username or profile URL. Leading @ is accepted and normalized.",
      "maxLength": 80,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "username"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "checkedAt": {
      "format": "date-time",
      "type": "string"
    },
    "meta": {
      "additionalProperties": true,
      "type": "object"
    },
    "profile": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "result_count": {
      "type": "integer"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    },
    "tweet": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "checkedAt"
  ],
  "type": "object"
}
POST/api/status/anthropic
$0.0057 default
Description

Check Anthropic Claude's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Anthropic Claude Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Anthropic Claude Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/bambulab
$0.0057 default
Description

Check Bambu Lab's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Bambu Lab Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Bambu Lab Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/bitbucket
$0.0057 default
Description

Check Bitbucket's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Bitbucket Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Bitbucket Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/bundle
$0.01 default
Description

Check a bundle of official status sources so an agent can decide whether to deploy, retry, or wait before blaming its own code.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "bundle": {
      "default": "vibe-deploy-readiness",
      "description": "Bundle filter for Vibe Deploy Readiness Bundle. Accepted values: \"vibe-deploy-readiness\", \"ai-app-stack\", \"source-and-ci\", \"deploy-platforms\", \"all\". Constraints: accepted values: \"vibe-deploy-readiness\", \"ai-app-stack\", \"source-and-ci\", \"deploy-platforms\", \"all\"; default: \"vibe-deploy-readiness\".",
      "enum": [
        "vibe-deploy-readiness",
        "ai-app-stack",
        "source-and-ci",
        "deploy-platforms",
        "all"
      ],
      "type": "string"
    },
    "includeComponents": {
      "default": false,
      "description": "Set true to enable include components behavior for Vibe Deploy Readiness Bundle. Constraints: default: false.",
      "type": "boolean"
    },
    "services": {
      "description": "Optional explicit service ids from /api/status/catalog.",
      "items": {
        "description": "Services item value for Vibe Deploy Readiness Bundle.",
        "type": "string"
      },
      "maxItems": 20,
      "minItems": 1,
      "type": "array"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/check
$0.0057 default
Description

Check one official status page or status API for GitHub, GitLab, deploy platforms, package registries, databases, auth, and AI APIs.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Official Service Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Official Service Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    },
    "service": {
      "description": "Service id from /api/status/catalog, for example github or gitlab.",
      "type": "string"
    }
  },
  "required": [
    "service"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/clerk
$0.0057 default
Description

Check Clerk's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Clerk Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Clerk Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/cloudflare
$0.0057 default
Description

Check Cloudflare's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Cloudflare Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Cloudflare Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/coinbase
$0.0057 default
Description

Check Coinbase's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Coinbase Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Coinbase Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/convex
$0.0057 default
Description

Check Convex's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Convex Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Convex Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/cursor
$0.0057 default
Description

Check Cursor's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Cursor Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Cursor Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/fly
$0.0057 default
Description

Check Fly.io's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Fly.io Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Fly.io Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/github
$0.0057 default
Description

Check GitHub's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for GitHub Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for GitHub Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/gitlab
$0.0057 default
Description

Check GitLab.com's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for GitLab Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for GitLab Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/netlify
$0.0057 default
Description

Check Netlify's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Netlify Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Netlify Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/npm
$0.0057 default
Description

Check npm's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for npm Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for npm Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/openai
$0.0057 default
Description

Check OpenAI's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for OpenAI Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for OpenAI Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/railway
$0.0057 default
Description

Check Railway's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Railway Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Railway Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/render
$0.0057 default
Description

Check Render's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Render Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Render Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/ring
$0.0057 default
Description

Check Ring's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Ring Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Ring Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/stack
$0.01 default
Description

Check a caller-selected stack of official status sources at the stack-bundle price. Repeated stack layers are rejected before payment.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeComponents": {
      "default": false,
      "description": "Set true to enable include components behavior for Custom Stack Status Bundle. Constraints: default: false.",
      "type": "boolean"
    },
    "services": {
      "description": "Service ids from /api/status/catalog. Stack pricing requires at least three stack roles and no repeated capped layer, for example one data layer and one deploy host.",
      "items": {
        "description": "Services item value for Custom Stack Status Bundle.",
        "type": "string"
      },
      "maxItems": 20,
      "minItems": 3,
      "type": "array"
    }
  },
  "required": [
    "services"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/supabase
$0.0057 default
Description

Check Supabase's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Supabase Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Supabase Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/status/vercel
$0.0057 default
Description

Check Vercel's official status source for current incidents, component health, and scheduled maintenance before an agent retries, deploys, or escalates.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "component": {
      "description": "Optional component selector, alias, id, or name. For Anthropic examples: api, code, console, claude-ai, cowork, government.",
      "type": "string"
    },
    "components": {
      "description": "Optional component selectors when the caller wants a scoped provider status.",
      "items": {
        "description": "Components item value for Vercel Status Check.",
        "type": "string"
      },
      "maxItems": 12,
      "type": "array"
    },
    "incidentLimit": {
      "default": 5,
      "description": "Maximum recent incidents to return when includeIncidentDetails is true.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "includeComponents": {
      "default": true,
      "description": "Set true to enable include components behavior for Vercel Status Check. Constraints: default: true.",
      "type": "boolean"
    },
    "includeIncidentDetails": {
      "default": false,
      "description": "Optional deep incident history/timeline fetch. For Status.io providers this parses the public history page; for Statuspage providers it uses /api/v2/incidents.json.",
      "type": "boolean"
    }
  },
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "type": "object"
}
POST/api/web/answer
$0.01 default
Description

Answer a public-web research question with cited source URLs, concise extractive evidence, confidence, source fetch status, and strict search/source caps.

Pricing
$0.01 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "answerStyle": {
      "default": "standard",
      "description": "Brief returns a shorter answer; standard includes more evidence.",
      "enum": [
        "brief",
        "standard"
      ],
      "type": "string"
    },
    "freshness": {
      "default": "any",
      "description": "Optional freshness preference. Use any when recency is not required.",
      "enum": [
        "any",
        "day",
        "week",
        "month",
        "year"
      ],
      "type": "string"
    },
    "includeSourceText": {
      "default": false,
      "description": "Set true to include short source text excerpts used for the answer.",
      "type": "boolean"
    },
    "limit": {
      "default": 5,
      "description": "Maximum search results to inspect before building the answer.",
      "maximum": 10,
      "minimum": 1,
      "type": "integer"
    },
    "maxSources": {
      "default": 3,
      "description": "Maximum result pages to fetch and cite.",
      "maximum": 5,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Question or research task to answer from public web results.",
      "maxLength": 240,
      "minLength": 2,
      "type": "string"
    },
    "site": {
      "description": "Optional public domain scope, such as example.com. URL-like values are normalized to the hostname.",
      "maxLength": 120,
      "type": "string"
    },
    "timeoutMs": {
      "default": 6000,
      "description": "Search and source fetch timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "answer": {
      "additionalProperties": true,
      "type": "object"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "search": {
      "additionalProperties": true,
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "sources": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "answer",
    "sources",
    "search",
    "limits"
  ],
  "type": "object"
}
POST/api/web/fetch
$0.0057 default
Description

Fetch one public URL and return normalized page metadata, cleaned text, markdown, links, status, content type, and extraction limits for agent workflows.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "includeHtml": {
      "default": false,
      "description": "Set true to return a truncated sanitized HTML excerpt.",
      "type": "boolean"
    },
    "includeLinks": {
      "default": true,
      "description": "Set true to extract normalized outbound and same-page links up to maxLinks.",
      "type": "boolean"
    },
    "maxBytes": {
      "default": 32768,
      "description": "Maximum response body bytes to read before truncating extraction.",
      "maximum": 65536,
      "minimum": 1024,
      "type": "integer"
    },
    "maxLinks": {
      "default": 20,
      "description": "Maximum links to return when includeLinks is true.",
      "maximum": 50,
      "minimum": 0,
      "type": "integer"
    },
    "timeoutMs": {
      "default": 5000,
      "description": "Fetch timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    },
    "url": {
      "description": "Public HTTP or HTTPS URL to fetch. Local, private, and non-web schemes are rejected.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "fetched": {
      "additionalProperties": true,
      "type": "object"
    },
    "htmlExcerpt": {
      "type": "string"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "links": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "metadata": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "text": {
      "additionalProperties": true,
      "type": "object"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "fetched",
    "metadata",
    "text",
    "links",
    "limits"
  ],
  "type": "object"
}
POST/api/web/research-brief
$0.03 default
Description

Bundle public web search, capped source fetching, extractive summarization, and citations into one structured research brief for agents that need an answer plus supporting sources.

Pricing
$0.03 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "format": {
      "default": "brief",
      "description": "Output shape preference. Brief returns a compact narrative, bullets emphasizes extracted evidence, and json keeps sections highly structured.",
      "enum": [
        "brief",
        "bullets",
        "json"
      ],
      "type": "string"
    },
    "freshness": {
      "default": "any",
      "description": "Optional freshness preference. Use day or week for current research and any for evergreen topics.",
      "enum": [
        "any",
        "day",
        "week",
        "month",
        "year"
      ],
      "type": "string"
    },
    "includeSourceText": {
      "default": false,
      "description": "Set true to include short source text excerpts used for the brief.",
      "type": "boolean"
    },
    "limit": {
      "default": 8,
      "description": "Maximum public web results to inspect before selecting sources for the brief.",
      "maximum": 10,
      "minimum": 1,
      "type": "integer"
    },
    "maxSources": {
      "default": 5,
      "description": "Maximum result pages to fetch, cite, and use as evidence.",
      "maximum": 5,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Research question, monitoring topic, competitor query, or decision prompt to investigate from public web sources.",
      "maxLength": 240,
      "minLength": 2,
      "type": "string"
    },
    "site": {
      "description": "Optional public domain scope, such as example.com. URL-like values are normalized to the hostname.",
      "maxLength": 120,
      "type": "string"
    },
    "timeoutMs": {
      "default": 6000,
      "description": "Search and source fetch timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "brief": {
      "additionalProperties": true,
      "type": "object"
    },
    "citations": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "providerMessage": {
      "type": "string"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "search": {
      "additionalProperties": true,
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "sources": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "brief",
    "citations",
    "sources",
    "search",
    "limits"
  ],
  "type": "object"
}
POST/api/web/search
$0.0057 default
Description

Search the public web and return normalized, source-neutral results with titles, URLs, domains, snippets, freshness controls, and strict result caps for agent research workflows.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "freshness": {
      "default": "any",
      "description": "Optional freshness preference. Use any when recency is not required.",
      "enum": [
        "any",
        "day",
        "week",
        "month",
        "year"
      ],
      "type": "string"
    },
    "includeSnippets": {
      "default": true,
      "description": "Set false to omit result snippets and return titles, URLs, domains, and rank only.",
      "type": "boolean"
    },
    "limit": {
      "default": 5,
      "description": "Maximum normalized results to return.",
      "maximum": 10,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Natural-language search query or keyword query to run against public web results.",
      "maxLength": 240,
      "minLength": 2,
      "type": "string"
    },
    "site": {
      "description": "Optional public domain scope, such as example.com. URL-like values are normalized to the hostname.",
      "maxLength": 120,
      "type": "string"
    },
    "timeoutMs": {
      "default": 6000,
      "description": "Search timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "results": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "search": {
      "additionalProperties": true,
      "type": "object"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "search",
    "results",
    "limits"
  ],
  "type": "object"
}
POST/api/web/similar
$0.0057 default
Description

Find related pages, substitutes, competitor pages, or supporting sources from a topic, task, or public seed URL, with normalized source-neutral results and strict search/fetch caps.

Pricing
$0.0057 default
Request schema
{
  "additionalProperties": false,
  "properties": {
    "excludeDomains": {
      "description": "Optional domains to omit from returned matches. The seed URL domain is omitted automatically.",
      "items": {
        "description": "Exclude Domains item value for Similar Page Finder. Constraints: max length: 120.",
        "maxLength": 120,
        "type": "string"
      },
      "maxItems": 10,
      "type": "array"
    },
    "freshness": {
      "default": "any",
      "description": "Optional freshness preference. Use any when recency is not required.",
      "enum": [
        "any",
        "day",
        "week",
        "month",
        "year"
      ],
      "type": "string"
    },
    "includeSnippets": {
      "default": true,
      "description": "Set false to omit snippets and return only titles, URLs, domains, ranks, and similarity reasons.",
      "type": "boolean"
    },
    "intent": {
      "default": "related",
      "description": "Similarity mode. Related finds nearby pages, alternatives finds substitutes, competitors finds competing services, and sources finds supporting references.",
      "enum": [
        "related",
        "alternatives",
        "competitors",
        "sources"
      ],
      "type": "string"
    },
    "limit": {
      "default": 5,
      "description": "Maximum similar pages to return.",
      "maximum": 10,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Topic, task, competitor name, or public HTTP/HTTPS URL used as the seed for finding similar pages.",
      "maxLength": 240,
      "minLength": 2,
      "type": "string"
    },
    "site": {
      "description": "Optional public domain scope for the search, such as example.com. URL-like values are normalized to the hostname.",
      "maxLength": 120,
      "type": "string"
    },
    "timeoutMs": {
      "default": 6000,
      "description": "Search and optional seed-page fetch timeout in milliseconds.",
      "maximum": 10000,
      "minimum": 1000,
      "type": "integer"
    },
    "url": {
      "description": "Optional public HTTP or HTTPS seed URL. When present, AgentBodega fetches bounded metadata/text and derives the similarity query from the page.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "query"
  ],
  "type": "object"
}
Response schema
{
  "additionalProperties": true,
  "properties": {
    "limits": {
      "additionalProperties": true,
      "type": "object"
    },
    "requested": {
      "additionalProperties": true,
      "type": "object"
    },
    "search": {
      "additionalProperties": true,
      "type": "object"
    },
    "seed": {
      "additionalProperties": true,
      "type": "object"
    },
    "similar": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    },
    "source": {
      "additionalProperties": true,
      "type": "object"
    },
    "success": {
      "type": "boolean"
    },
    "tool": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "required": [
    "success",
    "tool",
    "requested",
    "source",
    "seed",
    "similar",
    "limits"
  ],
  "type": "object"
}