Koskamo

HasData MCP

An official MCP server provided by HasData that exposes 57 web scraping tools, allowing AI agents to collect structured public web data from sources like Google, TikTok, Instagram, and e-commerce platforms without managing proxy infrastructure.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

HasData MCP logo, by HasDataVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-07Operated by HasData
MCP endpoint (Streamable HTTP)
https://mcp.hasdata.com/mcp
Vendor documentation

What its tools do

74 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

Read-only (73)

74 of 74 have a description · 74 of 74 declare behavior hints · 74 of 74 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to hasdata.com ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Collect structured public web data at scale
  • Scrape search results and local business reviews
  • Extract e-commerce product information
  • Access social media profiles and data

Source and maintenance

Vendor evidenceRegistry 1.0.1
Maintenance checked

Protocol and capabilities

Server
hasdata-mcp-api-server 1.0.0
MCP protocol negotiated in check
2025-11-25
Tools
74 advertised
Resources
159 advertised
Resource templates
0 advertised
Prompts
20 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "prompts": {
    "listChanged": true
  },
  "resources": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

HasData MCP server. Tools are generated from generated/endpoints.json. Listing tools, prompts and resources needs no credentials; calling a tool needs a HasData OAuth connection or an x-api-key header.

Tools

74 advertised

hasdata_airbnb_listing_getAirbnbListings — airbnb_listing: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Airbnb Listings Searches Airbnb for available stays by location or map bounding box (neLat/neLng/swLat/swLng) and date range (check-in/check-out) with guest composition (adults, children, infants, pets) and nextPageToken pagination. Returns listing id/url, title, price per night and total, rating, review count, coordinates, and photos. Use for travel planning agents, short-term rental market analysis, pricing/occupancy research, and lead lists for property management.

hasdata_airbnb_listing_getAirbnbListings input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "checkIn"
  ],
  "properties": {
    "pets": {
      "type": "number",
      "description": "Number of pets.\n"
    },
    "neLat": {
      "type": "number",
      "description": "North-east corner latitude of the map bounding box. When all four bounding-box coordinates are provided, listings are searched within the box instead of by location.\n"
    },
    "neLng": {
      "type": "number",
      "description": "North-east corner longitude of the map bounding box.\n"
    },
    "swLat": {
      "type": "number",
      "description": "South-west corner latitude of the map bounding box.\n"
    },
    "swLng": {
      "type": "number",
      "description": "South-west corner longitude of the map bounding box.\n"
    },
    "adults": {
      "type": "number",
      "description": "Number of adults.\n"
    },
    "checkIn": {
      "type": "string",
      "description": "The check-in date for the listings."
    },
    "infants": {
      "type": "number",
      "description": "Number of infants.\n"
    },
    "checkOut": {
      "type": "string",
      "description": "The check-out date for the listings."
    },
    "children": {
      "type": "number",
      "description": "Number of children.\n"
    },
    "location": {
      "type": "string",
      "description": "The location to search for listings. Required unless a full map bounding box (neLat, neLng, swLat, swLng) is provided."
    },
    "nextPageToken": {
      "type": "string",
      "description": "The token used to retrieve the next page of results."
    }
  },
  "additionalProperties": false
}
hasdata_airbnb_listing_getAirbnbListings annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_airbnb_property_getAirbnbPropertyDetails — airbnb_property: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Airbnb Property Details Fetches the full Airbnb property page by listing URL. Returns title, description, location, coordinates, rating and review count, host profile, room/bed/bath counts, photos, and amenities list. Use for travel-planning agents, deep-dive rate research, photo/amenity enrichment of listings discovered via the listing-search endpoint, and LSTR compliance or market-quality audits.

hasdata_airbnb_property_getAirbnbPropertyDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the Airbnb listing. Must be a valid Airbnb listing URL."
    }
  },
  "additionalProperties": false
}
hasdata_airbnb_property_getAirbnbPropertyDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_amazon_product_getProductDetails — amazon_product: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Amazon Product Details Fetches a single Amazon product page by ASIN on a chosen Amazon domain (amazon.com, .co.uk, .de, .jp, etc.). Returns title, brand, current/list/deal price, currency, availability, Buy Box seller, Prime eligibility, bullet points, A+ description, rating and review count, images, category breadcrumbs, variants/sibling ASINs, and the other-sellers offers block (when otherSellers=true), plus delivery-zone-aware pricing when a shipping zip/location is set. Use for product research agents, price/stock monitoring, catalog enrichment, listing QA, Buy Box tracking, and cross-locale competitive analysis.

hasdata_amazon_product_getProductDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "asin"
  ],
  "properties": {
    "asin": {
      "type": "string",
      "description": "The Amazon Standard Identification Number (ASIN) of the product."
    },
    "domain": {
      "enum": [
        "www.amazon.com",
        "www.amazon.de",
        "www.amazon.co.uk",
        "www.amazon.ae",
        "www.amazon.com.au",
        "www.amazon.com.be",
        "www.amazon.com.br",
        "www.amazon.ca",
        "www.amazon.eg",
        "www.amazon.es",
        "www.amazon.fr",
        "www.amazon.ie",
        "www.amazon.in",
        "www.amazon.it",
        "www.amazon.co.jp",
        "www.amazon.com.mx",
        "www.amazon.nl",
        "www.amazon.pl",
        "www.amazon.sa",
        "www.amazon.se",
        "www.amazon.sg",
        "www.amazon.com.tr",
        "www.amazon.co.za"
      ],
      "type": "string",
      "description": "Amazon domain to use. Default is www.amazon.com."
    },
    "language": {
      "enum": [
        "AR",
        "BN",
        "CS",
        "DA",
        "DE",
        "EN",
        "ES",
        "FR",
        "HI",
        "IT",
        "JP",
        "KN",
        "ML",
        "MR",
        "NL",
        "PL",
        "PT",
        "SV",
        "TA",
        "TE",
        "TR",
        "ZH"
      ],
      "type": "string",
      "description": "Optional Amazon language code. Supported values depend on the selected domain."
    },
    "deliveryZip": {
      "type": "string",
      "description": "Postal code of the delivery location."
    },
    "otherSellers": {
      "type": "boolean",
      "description": "Also collect the offers of other sellers competing for this item. This takes an extra request to Amazon and costs 5 credits on top of the base. Default is false."
    },
    "shippingLocation": {
      "type": "string",
      "description": "The two-letter country code to define the country of the delivery address. Provide one exact documented value (238 allowed), e.g. `AU`, `CA`."
    }
  },
  "additionalProperties": false
}
hasdata_amazon_product_getProductDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_amazon_reviews_getProductReviews — amazon_reviews: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Amazon Product Reviews Paginated fetch of customer reviews for an Amazon ASIN with filters for star rating (1-5, positive, critical), reviewer type (all vs verified purchase), media-only reviews, current-variant vs all-formats, keyword search, and sort (helpful/recent). Returns per-review title, body, star rating, author name and profile, review date, helpful-vote count, variant/format attributes, and attached media URLs, plus aggregate rating histogram. Use for voice-of-customer analysis, sentiment and theme extraction, feature-request mining, competitor review benchmarking, and feeding review-summarization or Q&A agents.

hasdata_amazon_reviews_getProductReviews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "asin"
  ],
  "properties": {
    "asin": {
      "type": "string",
      "description": "The Amazon Standard Identification Number (ASIN) of the product."
    },
    "page": {
      "type": "number",
      "description": "The page number to retrieve."
    },
    "stars": {
      "enum": [
        "allStars",
        "fiveStar",
        "fourStar",
        "threeStar",
        "twoStar",
        "oneStar",
        "positive",
        "critical"
      ],
      "type": "string",
      "description": "The star ratings to filter reviews."
    },
    "domain": {
      "enum": [
        "www.amazon.com",
        "www.amazon.de",
        "www.amazon.co.uk",
        "www.amazon.ae",
        "www.amazon.com.au",
        "www.amazon.com.be",
        "www.amazon.com.br",
        "www.amazon.ca",
        "www.amazon.eg",
        "www.amazon.es",
        "www.amazon.fr",
        "www.amazon.ie",
        "www.amazon.in",
        "www.amazon.it",
        "www.amazon.co.jp",
        "www.amazon.com.mx",
        "www.amazon.nl",
        "www.amazon.pl",
        "www.amazon.sa",
        "www.amazon.se",
        "www.amazon.sg",
        "www.amazon.com.tr",
        "www.amazon.co.za"
      ],
      "type": "string",
      "description": "Amazon domain to use. Default is www.amazon.com."
    },
    "format": {
      "enum": [
        "allFormats",
        "currentFormat"
      ],
      "type": "string",
      "description": "The format type to filter reviews. Include reviews of any product format/variant or specifically to the current format/variant."
    },
    "sortBy": {
      "enum": [
        "helpful",
        "recent"
      ],
      "type": "string",
      "description": "The criterion to sort reviews."
    },
    "language": {
      "enum": [
        "AR",
        "BN",
        "CS",
        "DA",
        "DE",
        "EN",
        "ES",
        "FR",
        "HI",
        "IT",
        "JP",
        "KN",
        "ML",
        "MR",
        "NL",
        "PL",
        "PT",
        "SV",
        "TA",
        "TE",
        "TR",
        "ZH"
      ],
      "type": "string",
      "description": "Optional Amazon language code. Supported values depend on the selected domain."
    },
    "mediaType": {
      "enum": [
        "allReviews",
        "mediaReviews"
      ],
      "type": "string",
      "description": "The media type to filter reviews."
    },
    "searchTerm": {
      "type": "string",
      "description": "A term to search within the reviews."
    },
    "reviewerType": {
      "enum": [
        "allReviews",
        "verifiedPurchaseReviews"
      ],
      "type": "string",
      "description": "The type of reviewers to filter."
    }
  },
  "additionalProperties": false
}
hasdata_amazon_reviews_getProductReviews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_amazon_search_getSearchResults — amazon_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Amazon Search Results Runs a keyword search on a chosen Amazon domain with pagination, delivery zip/location scoping, and sort order (featured, price low-to-high, price high-to-low, avg-customer-review, newest). Returns the organic results list with ASIN, title, thumbnail, product URL, price and list price, currency, star rating, review count, Prime/sponsored flags, and position, plus a `searchInformation` block with the echoed `query`, a `noResults` flag that is true when Amazon matched nothing, and the displayed total count. Use for SERP monitoring, keyword/share-of-shelf tracking, competitor discovery, ASIN harvesting to feed downstream product/reviews endpoints, and building product-research or price-comparison agents.

hasdata_amazon_search_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "The search term for which to get the search results."
    },
    "page": {
      "type": "number",
      "description": "Page number for pagination (e.g., 1 for the first page, 2 for the second page, etc.)."
    },
    "domain": {
      "enum": [
        "www.amazon.com",
        "www.amazon.de",
        "www.amazon.co.uk",
        "www.amazon.ae",
        "www.amazon.com.au",
        "www.amazon.com.be",
        "www.amazon.com.br",
        "www.amazon.ca",
        "www.amazon.eg",
        "www.amazon.es",
        "www.amazon.fr",
        "www.amazon.ie",
        "www.amazon.in",
        "www.amazon.it",
        "www.amazon.co.jp",
        "www.amazon.com.mx",
        "www.amazon.nl",
        "www.amazon.pl",
        "www.amazon.sa",
        "www.amazon.se",
        "www.amazon.sg",
        "www.amazon.com.tr",
        "www.amazon.co.za"
      ],
      "type": "string",
      "description": "Amazon domain to use. Default is www.amazon.com."
    },
    "sortBy": {
      "enum": [
        "featured",
        "priceLowToHigh",
        "priceHighToLow",
        "avgCustomerReview",
        "newestArrivals",
        "bestSellers"
      ],
      "type": "string",
      "description": "Parameter used for sorting results"
    },
    "language": {
      "enum": [
        "AR",
        "BN",
        "CS",
        "DA",
        "DE",
        "EN",
        "ES",
        "FR",
        "HI",
        "IT",
        "JP",
        "KN",
        "ML",
        "MR",
        "NL",
        "PL",
        "PT",
        "SV",
        "TA",
        "TE",
        "TR",
        "ZH"
      ],
      "type": "string",
      "description": "Optional Amazon language code. Supported values depend on the selected domain."
    },
    "deliveryZip": {
      "type": "string",
      "description": "Postal code of the delivery location."
    },
    "shippingLocation": {
      "type": "string",
      "description": "The two-letter country code to define the country of the delivery address. Provide one exact documented value (238 allowed), e.g. `AU`, `CA`."
    }
  },
  "additionalProperties": false
}
hasdata_amazon_search_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_amazon_seller_getSellerDetails — amazon_seller: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Amazon Seller Details Fetches the public storefront profile for an Amazon seller by sellerId on the chosen domain/language. Returns business name, seller logo, About-this-seller text, overall feedback rating and lifetime/12-month/90-day/30-day rating breakdown, feedback count, business address and contact details, and customer service info. Use for seller due-diligence and vetting, counterfeit/brand-protection workflows, MAP-violation investigations, building seller leaderboards, and enriching marketplace seller directories.

hasdata_amazon_seller_getSellerDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "sellerId"
  ],
  "properties": {
    "domain": {
      "enum": [
        "www.amazon.com",
        "www.amazon.de",
        "www.amazon.co.uk",
        "www.amazon.ae",
        "www.amazon.com.au",
        "www.amazon.com.be",
        "www.amazon.com.br",
        "www.amazon.ca",
        "www.amazon.eg",
        "www.amazon.es",
        "www.amazon.fr",
        "www.amazon.ie",
        "www.amazon.in",
        "www.amazon.it",
        "www.amazon.co.jp",
        "www.amazon.com.mx",
        "www.amazon.nl",
        "www.amazon.pl",
        "www.amazon.sa",
        "www.amazon.se",
        "www.amazon.sg",
        "www.amazon.com.tr",
        "www.amazon.co.za"
      ],
      "type": "string",
      "description": "Amazon domain to use. Default is www.amazon.com."
    },
    "language": {
      "enum": [
        "AR",
        "BN",
        "CS",
        "DA",
        "DE",
        "EN",
        "ES",
        "FR",
        "HI",
        "IT",
        "JP",
        "KN",
        "ML",
        "MR",
        "NL",
        "PL",
        "PT",
        "SV",
        "TA",
        "TE",
        "TR",
        "ZH"
      ],
      "type": "string",
      "description": "Optional Amazon language code. Supported values depend on the selected domain."
    },
    "sellerId": {
      "type": "string",
      "description": "The unique Amazon seller ID."
    }
  },
  "additionalProperties": false
}
hasdata_amazon_seller_getSellerDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_amazon_seller_products_getSellerProducts — amazon_seller_products: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Amazon Seller Products Paginated listing of the storefront catalog offered by a given Amazon sellerId on the chosen domain. Returns each product row with ASIN, title, image, product URL, price and list price, currency, star rating, and review count. Use to map a competitor's or 3P seller's full assortment, detect new SKU launches, build brand-protection watchlists, drive price-intelligence pipelines, and seed per-ASIN deep-dives against the product and reviews endpoints.

hasdata_amazon_seller_products_getSellerProducts input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "sellerId"
  ],
  "properties": {
    "page": {
      "type": "number",
      "description": "Page number for pagination (e.g., 1 for the first page, 2 for the second page, etc.)."
    },
    "domain": {
      "enum": [
        "www.amazon.com",
        "www.amazon.de",
        "www.amazon.co.uk",
        "www.amazon.ae",
        "www.amazon.com.au",
        "www.amazon.com.be",
        "www.amazon.com.br",
        "www.amazon.ca",
        "www.amazon.eg",
        "www.amazon.es",
        "www.amazon.fr",
        "www.amazon.ie",
        "www.amazon.in",
        "www.amazon.it",
        "www.amazon.co.jp",
        "www.amazon.com.mx",
        "www.amazon.nl",
        "www.amazon.pl",
        "www.amazon.sa",
        "www.amazon.se",
        "www.amazon.sg",
        "www.amazon.com.tr",
        "www.amazon.co.za"
      ],
      "type": "string",
      "description": "Amazon domain to use. Default is www.amazon.com."
    },
    "language": {
      "enum": [
        "AR",
        "BN",
        "CS",
        "DA",
        "DE",
        "EN",
        "ES",
        "FR",
        "HI",
        "IT",
        "JP",
        "KN",
        "ML",
        "MR",
        "NL",
        "PL",
        "PT",
        "SV",
        "TA",
        "TE",
        "TR",
        "ZH"
      ],
      "type": "string",
      "description": "Optional Amazon language code. Supported values depend on the selected domain."
    },
    "sellerId": {
      "type": "string",
      "description": "The unique Amazon seller ID."
    }
  },
  "additionalProperties": false
}
hasdata_amazon_seller_products_getSellerProducts annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_bing_serp_getSearchResults — bing_serp: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Bing Search Results Fetches Bing SERPs for a query with geo targeting (location/lat/lon), market (mkt), country (cc), safesearch (off/moderate/strict), interface language (setLang), time/custom filters, device type, and pagination (first offset). Returns organic results (title, url, snippet, displayed url, position) and related searches. Use for SEO rank tracking, SERP feature monitoring, Bing-specific visibility audits, and training/eval data for search agents.

hasdata_bing_serp_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to scrape the SERP."
    },
    "cc": {
      "enum": [
        "ar",
        "au",
        "at",
        "be",
        "br",
        "ca",
        "cl",
        "dk",
        "fi",
        "fr",
        "de",
        "hk",
        "in",
        "id",
        "it",
        "jp",
        "kr",
        "my",
        "mx",
        "nl",
        "nz",
        "no",
        "cn",
        "pl",
        "pt",
        "ph",
        "ru",
        "sa",
        "za",
        "es",
        "se",
        "ch",
        "tw",
        "tr",
        "gb",
        "us"
      ],
      "type": "string",
      "description": "The two-letter country code for the country to search from."
    },
    "lat": {
      "type": "string",
      "description": "GPS latitude for the search origin."
    },
    "lon": {
      "type": "string",
      "description": "GPS longitude for the search origin."
    },
    "mkt": {
      "enum": [
        "es-ar",
        "en-au",
        "de-at",
        "nl-be",
        "fr-be",
        "pt-br",
        "en-ca",
        "fr-ca",
        "es-cl",
        "da-dk",
        "fi-fi",
        "fr-fr",
        "de-de",
        "zh-hk",
        "en-in",
        "en-id",
        "it-it",
        "ja-jp",
        "ko-kr",
        "en-my",
        "es-mx",
        "nl-nl",
        "en-nz",
        "no-no",
        "zh-cn",
        "pl-pl",
        "en-ph",
        "ru-ru",
        "en-za",
        "es-es",
        "sv-se",
        "fr-ch",
        "de-ch",
        "zh-tw",
        "tr-tr",
        "en-gb",
        "en-us",
        "es-us"
      ],
      "type": "string",
      "description": "The two-letter country code for the country to search from."
    },
    "first": {
      "type": "number",
      "description": "This parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 1 (default) indicates the first page of results, 11 refers to the second page, and 21 to the third page.\n"
    },
    "filters": {
      "type": "string",
      "description": "Allows applying various filters to narrow search results, including date-based options:\n\n  - `ex1:\"ez1\"` – past 24 hours\n  - `ex1:\"ez2\"` – past week\n  - `ex1:\"ez3\"` – past month\n\nFor complex filters, run a Bing search and copy the filters parameter from the URL.\n"
    },
    "setLang": {
      "enum": [
        "ar",
        "bg",
        "ca",
        "zh-hans",
        "zh-hant",
        "hr",
        "cs",
        "da",
        "nl",
        "en",
        "en-gb",
        "et",
        "fi",
        "fr",
        "de",
        "he",
        "hi",
        "hu",
        "it",
        "jp",
        "ko",
        "lv",
        "lt",
        "ms",
        "nb",
        "pl",
        "pt-br",
        "pt-pt",
        "ro",
        "ru",
        "sr",
        "sk",
        "sl",
        "es",
        "sv",
        "th",
        "tr",
        "uk",
        "vi"
      ],
      "type": "string",
      "description": "The language of the user interface and preferred result language. Accepts a two-letter language code (e.g. `en`, `de`) or a locale/script variant (e.g. `en-gb`, `zh-hans`, `pt-br`)."
    },
    "location": {
      "type": "string",
      "description": "Defines the search’s origin location as free text (e.g. `Austin, Texas`). It is resolved to coordinates to localize the results. For realistic results, set location at the city level. If both `lat` and `lon` are provided, they take precedence and `location` is ignored. If omitted, the proxy’s location may be used."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile",
        "tablet"
      ],
      "type": "string",
      "description": "Specify the device type for the search."
    },
    "safeSearch": {
      "enum": [
        "off",
        "moderate",
        "strict"
      ],
      "type": "string",
      "description": "Adult Content Filtering option."
    }
  },
  "additionalProperties": false
}
hasdata_bing_serp_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_booking_place_getBookingPlaceDetails — booking_place: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Booking Hotel Details Fetches a single Booking.com property by its full URL for the given stay dates (`checkInDate` / `checkOutDate`) and guest composition (rooms, adults, children with ages). Returns the property identity (hotelId, title, address, coordinates), policies (free cancellation, no prepayment, child/pet stays), price, rating and review summary, photos, and the list of available room suites for the requested window. Use to enrich property listings with real-time availability and pricing, monitor a specific competitor hotel over time, validate amenities and photos before displaying venue details to end users, or fetch full details after discovering the property URL via the Booking Search endpoint.

hasdata_booking_place_getBookingPlaceDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url",
    "checkInDate",
    "checkOutDate",
    "rooms",
    "adults",
    "children"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "Full Booking.com URL of the property page. Only `booking.com` and `www.booking.com` hosts are accepted."
    },
    "rooms": {
      "type": "number",
      "description": "Number of rooms to book."
    },
    "adults": {
      "type": "number",
      "description": "Number of adult guests across all rooms."
    },
    "children": {
      "type": "number",
      "description": "Number of child guests across all rooms (0–10). Pass `0` if there are no children."
    },
    "currency": {
      "type": "string",
      "description": "Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`."
    },
    "language": {
      "enum": [
        "en-us",
        "en-gb",
        "de",
        "nl",
        "fr",
        "es",
        "es-ar",
        "es-mx",
        "ca",
        "it",
        "pt-pt",
        "pt-br",
        "no",
        "fi",
        "sv",
        "da",
        "cs",
        "hu",
        "ro",
        "ja",
        "zh-cn",
        "zh-tw",
        "pl",
        "el",
        "ru",
        "tr",
        "bg",
        "ar",
        "ko",
        "he",
        "lv",
        "uk",
        "hi",
        "id",
        "ms",
        "th",
        "et",
        "hr",
        "lt",
        "sk",
        "sr",
        "sl",
        "vi",
        "tl",
        "is"
      ],
      "type": "string",
      "description": "Language of the Booking.com interface and localized fields in the response."
    },
    "checkInDate": {
      "type": "string",
      "description": "Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`."
    },
    "checkOutDate": {
      "type": "string",
      "description": "Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`."
    },
    "childrenAges": {
      "type": "string",
      "description": "Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`.\n\nExample: `1,3,7`\n"
    }
  },
  "additionalProperties": false
}
hasdata_booking_place_getBookingPlaceDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_booking_search_getBookingSearchResults — booking_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Booking Search Results Searches Booking.com for accommodations by destination keyword and stay dates (`checkInDate` / `checkOutDate`) with guest composition (rooms, adults, children with ages) and rich filtering: property type, star rating, review score, hotel and room facilities, distance from center, reservation policy, bed preference, travel group, online payment, accessibility, plus optional price range and bedroom/bathroom counts. Each page returns 25 results. To page through a destination, take `pagination.nextPageToken` from the response and pass it back as `nextPageToken` on the next call. The legacy `page` parameter still works but, on large destinations, returns duplicate properties across pages, so `nextPageToken` is preferred. Locale is controlled by `language` and `currency`. Returns each hotel's `hotelId`, title and Booking URL, location info (city, address, coordinates, distance to center / nearest beach), policies (free cancellation, no prepayment, child/pet stays), price (per stay, before discount, discount, currency), rating, review summary and main photo. Use to power travel-planning agents, OTA price/inventory monitoring, hotel competitor analysis, lead-generation in the hospitality vertical, or to feed `hotelId` / URL into the Booking Place endpoint for full property details.

hasdata_booking_search_getBookingSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "checkInDate",
    "checkOutDate",
    "rooms",
    "adults",
    "children"
  ],
  "properties": {
    "page": {
      "type": "number",
      "description": "Legacy pagination. Booking.com returns 25 results per page; pass `2` for results 26–50, `3` for 51–75, etc. On large destinations this returns duplicate properties across pages — use `nextPageToken` instead. Ignored when `nextPageToken` is provided."
    },
    "sort": {
      "enum": [
        "ourTopPicks",
        "homesAndApartmentsFirst",
        "priceLowestFirst",
        "priceHighestFirst",
        "bestReviewedAndLowestPrice",
        "ratingHighToLow",
        "ratingLowToHigh",
        "ratingAndPrice",
        "distanceFromDowntown",
        "topReviewed"
      ],
      "type": "string",
      "description": "Sort order applied by Booking.com to the results page."
    },
    "rooms": {
      "type": "number",
      "description": "Number of rooms to book."
    },
    "adults": {
      "type": "number",
      "description": "Number of adult guests across all rooms."
    },
    "keyword": {
      "type": "string",
      "description": "Free-text destination query. Usually a city, region or neighborhood (e.g. `Paris`, `Manhattan, New York`); a specific property name is also accepted."
    },
    "meals__": {
      "type": "array",
      "items": {
        "enum": [
          "breakfastIncluded",
          "kitchenFacilities"
        ],
        "type": "string"
      },
      "description": "Filter by available meal plans. Multiple values are combined with OR."
    },
    "bedrooms": {
      "type": "number",
      "description": "Minimum number of bedrooms in the property."
    },
    "children": {
      "type": "number",
      "description": "Number of child guests across all rooms (0–10). Pass `0` if there are no children."
    },
    "currency": {
      "type": "string",
      "description": "Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`."
    },
    "language": {
      "enum": [
        "en-us",
        "en-gb",
        "de",
        "nl",
        "fr",
        "es",
        "es-ar",
        "es-mx",
        "ca",
        "it",
        "pt-pt",
        "pt-br",
        "no",
        "fi",
        "sv",
        "da",
        "cs",
        "hu",
        "ro",
        "ja",
        "zh-cn",
        "zh-tw",
        "pl",
        "el",
        "ru",
        "tr",
        "bg",
        "ar",
        "ko",
        "he",
        "lv",
        "uk",
        "hi",
        "id",
        "ms",
        "th",
        "et",
        "hr",
        "lt",
        "sk",
        "sr",
        "sl",
        "vi",
        "tl",
        "is"
      ],
      "type": "string",
      "description": "Language of the Booking.com interface and localized fields in the response."
    },
    "rating__": {
      "type": "array",
      "items": {
        "enum": [
          "oneStar",
          "twoStars",
          "threeStars",
          "fourStars",
          "fiveStars"
        ],
        "type": "string"
      },
      "description": "Filter by official star rating. Multiple values are combined with OR."
    },
    "bathrooms": {
      "type": "number",
      "description": "Minimum number of bathrooms in the property."
    },
    "price_max_": {
      "type": "number",
      "description": "Maximum total price for the stay, in the requested `currency`. Must be `>= 20` and greater than `price[min]`. Required if `price[min]` is omitted."
    },
    "price_min_": {
      "type": "number",
      "description": "Minimum total price for the stay, in the requested `currency`. Must be `>= 10`. Required if `price[max]` is omitted."
    },
    "checkInDate": {
      "type": "string",
      "description": "Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`."
    },
    "checkOutDate": {
      "type": "string",
      "description": "Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`."
    },
    "childrenAges": {
      "type": "string",
      "description": "Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`.\n\nExample: `1,3,7`\n"
    },
    "facilities__": {
      "type": "array",
      "items": {
        "enum": [
          "swimmingPool",
          "parking",
          "spa",
          "freeWifi",
          "hotTubJacuzzi",
          "airportShuttle",
          "fitnessCenter",
          "restaurant",
          "nonSmokingRooms",
          "frontDesk24Hour",
          "electricVehicleChargingStation",
          "wheelchairAccessible",
          "roomService"
        ],
        "type": "string"
      },
      "description": "Filter by property-level facilities. Multiple values are combined with OR."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Recommended way to paginate. Omit it on the first request; the response returns `pagination.nextPageToken`, which you pass back here to fetch the next page. When a successful response omits the token, the last page has been reached. If a token has expired, the request fails with an error — start again without `nextPageToken`."
    },
    "reviewScore__": {
      "type": "array",
      "items": {
        "enum": [
          "wonderful",
          "veryGood",
          "good",
          "pleasant"
        ],
        "type": "string"
      },
      "description": "Filter by minimum guest review score bucket. Multiple values are combined with OR."
    },
    "travelGroup__": {
      "type": "array",
      "items": {
        "enum": [
          "adultsOnly",
          "petFriendly"
        ],
        "type": "string"
      },
      "description": "Filter by travel-group oriented stay options. Multiple values are combined with OR."
    },
    "propertyType__": {
      "type": "array",
      "items": {
        "enum": [
          "hostels",
          "bedAndBreakfast",
          "hotels",
          "apartments",
          "resorts",
          "guesthouses",
          "homestays",
          "entireHomesAndApartments"
        ],
        "type": "string"
      },
      "description": "Filter by property type. Multiple values are combined with OR."
    },
    "bedPreference__": {
      "type": "array",
      "items": {
        "enum": [
          "twinBeds",
          "doubleBed"
        ],
        "type": "string"
      },
      "description": "Filter by bed configuration. Multiple values are combined with OR."
    },
    "onlinePayment__": {
      "type": "array",
      "items": {
        "enum": [
          "acceptsOnlinePayments"
        ],
        "type": "string"
      },
      "description": "Filter by online payment options."
    },
    "roomFacilities__": {
      "type": "array",
      "items": {
        "enum": [
          "privateBathroom",
          "balcony",
          "seaView",
          "kitchenKitchenette",
          "airConditioning",
          "bathtub",
          "hotTub",
          "view",
          "spaTub",
          "upperFloorsAccessibleByElevator",
          "microwave",
          "refrigerator",
          "coffeeMachine",
          "electricKettle",
          "heating",
          "towels",
          "toilet",
          "mountainView",
          "flatScreenTv",
          "tv",
          "coffeeTeaMaker",
          "hairdryer",
          "toiletPaper",
          "shower",
          "linens"
        ],
        "type": "string"
      },
      "description": "Filter by in-room facilities. Multiple values are combined with OR."
    },
    "reservationPolicy__": {
      "type": "array",
      "items": {
        "enum": [
          "freeCancellation",
          "noPrepayment"
        ],
        "type": "string"
      },
      "description": "Filter by reservation flexibility. Multiple values are combined with OR."
    },
    "roomAccessibility__": {
      "type": "array",
      "items": {
        "enum": [
          "upperFloorsAccessibleByElevator",
          "entireUnitLocatedOnGroundFloor",
          "walkInShower",
          "entireUnitWheelchairAccessible",
          "adaptedBath",
          "rollInShower",
          "showerChair",
          "emergencyCordInBathroom",
          "toiletWithGrabRails",
          "raisedToilet",
          "lowerSink"
        ],
        "type": "string"
      },
      "description": "Filter by in-room accessibility features. Multiple values are combined with OR."
    },
    "distanceFromCenter__": {
      "type": "array",
      "items": {
        "enum": [
          "lessThan1Km",
          "lessThan3Km",
          "lessThan5Km"
        ],
        "type": "string"
      },
      "description": "Filter by distance from the destination center. Multiple values are combined with OR."
    },
    "propertyAccessibility__": {
      "type": "array",
      "items": {
        "enum": [
          "auditoryGuidance",
          "toiletWithGrabRails",
          "visualAidsTactileSigns",
          "visualAidsBraille",
          "bathroomEmergencyCord",
          "raisedToilet",
          "loweredSink"
        ],
        "type": "string"
      },
      "description": "Filter by property-level accessibility features. Multiple values are combined with OR."
    }
  },
  "additionalProperties": false
}
hasdata_booking_search_getBookingSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_chatgpt_chat_getChatgptAnswer — chatgpt_chat: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get ChatGPT Answer Sends a prompt to ChatGPT anonymously and returns the answer as markdown text, plus every web source ChatGPT consulted with its domain, page title, snippet, publication date and thumbnail, the links rendered inside the answer, the conversation title ChatGPT generated, the model that answered, and whether a web search was used. The language of the answer follows the prompt — write the prompt in the language you want back, or ask for one in it. Set the frame of reference for words like "today" with timezone. Each request is a fresh conversation with no memory of earlier ones. Use to answer questions with cited sources, to ground an agent or RAG pipeline in ChatGPT's web-search results, to summarise current events with their sources, or to build datasets of model answers.

hasdata_chatgpt_chat_getChatgptAnswer input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "prompt"
  ],
  "properties": {
    "prompt": {
      "type": "string",
      "description": "The question or instruction to send to ChatGPT, up to 8000 characters. A prompt that asks about recent events makes ChatGPT search the web and return sources; a general-knowledge prompt is answered from the model alone. The prompt also decides the language of the answer — write it in the language you want back, or ask for one explicitly (\"Antworte auf Deutsch\")."
    },
    "timezone": {
      "type": "string",
      "description": "IANA time zone name, for example `America/Chicago` or `Europe/Berlin`. It sets what ChatGPT treats as the current date and time, which matters for prompts that say \"today\", \"this week\" or \"latest\"."
    }
  },
  "additionalProperties": false
}
hasdata_chatgpt_chat_getChatgptAnswer annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_duckduckgo_serp_getSearchResults — duckduckgo_serp: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get DuckDuckGo Search Results Fetches DuckDuckGo SERPs for a query with region targeting (kl, or cc+setLang), safesearch (off/moderate/strict), device type, and token-based pagination. Returns organic results (title, url, snippet, displayed url, position, date, sitelinks, video metadata), ads, and the Search Assist AI answer. Use for SEO rank tracking, SERP feature monitoring, DuckDuckGo-specific visibility audits, and training/eval data for search agents.

hasdata_duckduckgo_serp_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to scrape the SERP. Required unless `nextPageToken` is provided (which carries the query of the page it continues)."
    },
    "cc": {
      "enum": [
        "ar",
        "au",
        "at",
        "be",
        "br",
        "ca",
        "cl",
        "dk",
        "fi",
        "fr",
        "de",
        "hk",
        "in",
        "id",
        "it",
        "jp",
        "kr",
        "my",
        "mx",
        "nl",
        "nz",
        "no",
        "cn",
        "pl",
        "pt",
        "ph",
        "ru",
        "sa",
        "za",
        "es",
        "se",
        "ch",
        "tw",
        "tr",
        "gb",
        "us"
      ],
      "type": "string",
      "description": "The two-letter country code for the country to search from. Combined with `setLang` to form the DuckDuckGo region. Ignored if `kl` is set."
    },
    "kl": {
      "enum": [
        "ar-es",
        "au-en",
        "at-de",
        "be-nl",
        "be-fr",
        "br-pt",
        "ca-en",
        "ca-fr",
        "cl-es",
        "dk-da",
        "fi-fi",
        "fr-fr",
        "de-de",
        "hk-tzh",
        "in-en",
        "id-en",
        "it-it",
        "jp-jp",
        "kr-kr",
        "my-en",
        "mx-es",
        "nl-nl",
        "nz-en",
        "no-no",
        "cn-zh",
        "pl-pl",
        "ph-en",
        "ru-ru",
        "za-en",
        "es-es",
        "se-sv",
        "ch-de",
        "tw-tzh",
        "tr-tr",
        "uk-en",
        "us-en",
        "wt-wt"
      ],
      "type": "string",
      "description": "DuckDuckGo region code in `<country>-<language>` form (e.g. `us-en`, `de-de`). Sets country and interface language at once; takes precedence over `cc`/`setLang`. Use `wt-wt` for no region."
    },
    "setLang": {
      "enum": [
        "ar",
        "ca",
        "zh-hans",
        "zh-hant",
        "hr",
        "cs",
        "da",
        "nl",
        "en",
        "et",
        "fi",
        "fr",
        "de",
        "he",
        "hu",
        "it",
        "ja",
        "ko",
        "lv",
        "lt",
        "nb",
        "pl",
        "pt",
        "ro",
        "ru",
        "sk",
        "sl",
        "es",
        "sv",
        "th",
        "tr",
        "uk",
        "vi"
      ],
      "type": "string",
      "description": "The preferred result/interface language code — usually two letters (e.g. `en`, `de`), with script-tag variants for some languages (e.g. `zh-hans`, `zh-hant`). Combined with `cc` to form the DuckDuckGo region. Ignored if `kl` is set."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile",
        "tablet"
      ],
      "type": "string",
      "description": "Specify the device type for the search."
    },
    "safeSearch": {
      "enum": [
        "off",
        "moderate",
        "strict"
      ],
      "type": "string",
      "description": "Adult Content Filtering option."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Opaque token returned in each response as `nextPageToken`. Pass it back (in place of `q`) to fetch the next page of results. It carries a pre-signed page URL bound to the original request's session, so it must be used as-is and cannot be constructed manually. Absent when there are no further pages.\n"
    }
  },
  "additionalProperties": false
}
hasdata_duckduckgo_serp_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_facebook_profile_getFacebookProfile — facebook_profile: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Facebook Profile Fetches a public Facebook page or profile by handle (username, @username or numeric profile id) and returns page id, name, username, category, bio, exact likes and talking-about counts, followers and following, website, phone, page owner, profile and cover photo URLs, plus the posts on the page with their text, media, reaction breakdown, comment and share counts. Walks the feed three posts per request via pagination.nextPageToken. Use to enrich company or creator records, verify a brand's reach and contact details before outreach, monitor competitor pages, or build datasets of page metadata.

hasdata_facebook_profile_getFacebookProfile input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "handle"
  ],
  "properties": {
    "handle": {
      "type": "string",
      "description": "The Facebook username of the page or profile you want to scrape, with or without the `@` symbol, or its numeric profile id (the `id` of a `profile.php?id=…` URL), e.g. `nike` or `61550916779928`. Groups and private personal accounts are not supported."
    },
    "language": {
      "enum": [
        "ar",
        "bn",
        "cs",
        "da",
        "de",
        "el",
        "en",
        "es",
        "fi",
        "fil",
        "fr",
        "he",
        "hi",
        "hu",
        "id",
        "it",
        "ja",
        "ko",
        "ms",
        "nb",
        "nl",
        "pl",
        "pt",
        "ro",
        "ru",
        "sv",
        "th",
        "tr",
        "uk",
        "vi",
        "zh-hans",
        "zh-hant"
      ],
      "type": "string",
      "description": "Language the page is rendered in. Facebook serves a page in the language of the request, so this changes the localised strings (`followersCount`, `followingCount`, `category`) while the exact figures (`likesCount`, `talkingAboutCount`) stay numeric in every language."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Token from the `pagination.nextPageToken` field of a previous response; the page it leads to is reported as `pagination.nextPage`. Each paginated request returns the next three posts of the feed and a fresh token; the token is absent once the feed ends. Every request is billed separately."
    }
  },
  "additionalProperties": false
}
hasdata_facebook_profile_getFacebookProfile annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_gemini_chat_getGeminiAnswer — gemini_chat: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Gemini Answer Sends a prompt to Google Gemini anonymously and returns the markdown answer plus cited web sources (domain, title, snippet, cited text, favicon), inline images (source page, thumbnail, alt), the detected model, answer language, whether a web search ran, and a subsequentRequestToken. The answer language follows the prompt and hl. Pass the subsequentRequestToken from a previous answer to continue that conversation; omit it to start fresh. Use for cited answers, RAG grounding, AI-visibility monitoring or model-answer datasets.

hasdata_gemini_chat_getGeminiAnswer input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "prompt"
  ],
  "properties": {
    "hl": {
      "type": "string",
      "description": "Interface language for the answer, as a BCP-47 locale such as `en-US` or `de-DE`. The answer language also follows the language of the prompt."
    },
    "prompt": {
      "type": "string",
      "description": "The question or instruction to send to Google Gemini, up to 8000 characters. A prompt that asks about recent events makes Gemini search the web and return sources; a general-knowledge prompt is answered from the model alone. The prompt also decides the language of the answer — write it in the language you want back, or ask for one explicitly."
    },
    "subsequentRequestToken": {
      "type": "string",
      "description": "Token returned in a previous answer as `subsequentRequestToken`. Pass it back to continue that conversation, so Gemini answers the new prompt with the earlier turns in context. Omit it to start a fresh conversation."
    }
  },
  "additionalProperties": false
}
hasdata_gemini_chat_getGeminiAnswer annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_glassdoor_job_getJobDetails — glassdoor_job: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get GlassDoor Job Details Fetches a Glassdoor job posting by its vacancy URL. Returns job title, company name and rating, location, salary estimate, posted date, full job description, and qualifications/benefits. Use for ATS ingestion, job aggregators, comp benchmarking, enrichment of company profiles, and feeding descriptions into LLM matching or resume-tailoring pipelines.

hasdata_glassdoor_job_getJobDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the job vacancy to retrieve details for."
    }
  },
  "additionalProperties": false
}
hasdata_glassdoor_job_getJobDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_glassdoor_listing_getJobListings — glassdoor_listing: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get GlassDoor Job Listings Searches Glassdoor job listings by keyword and location with sort (recent/relevant), domain targeting, filters (date posted, distance, salary range, company rating, easy apply, remote), and nextPageToken pagination that keeps the filters. Returns an array of jobs with title, company, location, salary estimate, posted date, job URL, and jobId, plus per-page tokens. Use to build job feeds, monitor hiring trends for roles/companies/regions, power candidate sourcing tools, and collect URLs for downstream full-detail scraping via the Glassdoor Job endpoint.

hasdata_glassdoor_listing_getJobListings input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "location"
  ],
  "properties": {
    "sort": {
      "enum": [
        "recent",
        "relevant"
      ],
      "type": "string",
      "description": "The sorting option for the search results."
    },
    "domain": {
      "enum": [
        "www.glassdoor.com.ar",
        "www.glassdoor.com.au",
        "www.glassdoor.at",
        "nl.glassdoor.be",
        "fr.glassdoor.be",
        "www.glassdoor.com.br",
        "www.glassdoor.ca",
        "fr.glassdoor.ca",
        "www.glassdoor.fr",
        "www.glassdoor.de",
        "www.glassdoor.com.hk",
        "www.glassdoor.co.in",
        "www.glassdoor.ie",
        "www.glassdoor.it",
        "www.glassdoor.com.mx",
        "www.glassdoor.nl",
        "www.glassdoor.co.nz",
        "www.glassdoor.sg",
        "www.glassdoor.es",
        "de.glassdoor.ch",
        "fr.glassdoor.ch",
        "www.glassdoor.co.uk"
      ],
      "type": "string",
      "description": "The domain of the Glassdoor site (optional)."
    },
    "radius": {
      "enum": [
        0,
        5,
        10,
        15,
        25,
        50,
        100
      ],
      "type": "number",
      "description": "Search radius around the location, in miles. `0` keeps only jobs in the location itself. Glassdoor uses 25 miles when this is not set."
    },
    "keyword": {
      "type": "string",
      "description": "The keyword used to search for job listings."
    },
    "location": {
      "type": "string",
      "description": "The location to search for job listings."
    },
    "maxSalary": {
      "type": "number",
      "description": "Upper bound of the yearly pay range, must be greater than `minSalary`. Can be used on its own."
    },
    "minRating": {
      "enum": [
        1,
        2,
        3,
        4
      ],
      "type": "number",
      "description": "Returns jobs from companies rated at least this high. Glassdoor applies the filter approximately, so a few companies rated slightly below the value can appear."
    },
    "minSalary": {
      "type": "number",
      "description": "Lower bound of the yearly pay range. A job is kept when its estimated pay range overlaps the requested one; hourly and monthly pay are converted to yearly. Jobs without a pay estimate are excluded when a salary filter is set."
    },
    "datePosted": {
      "enum": [
        1,
        3,
        7,
        14,
        30
      ],
      "type": "number",
      "description": "Returns only jobs posted within the given number of days."
    },
    "remoteOnly": {
      "type": "boolean",
      "description": "Returns only remote jobs. Defaults to false."
    },
    "easyApplyOnly": {
      "type": "boolean",
      "description": "Returns only jobs that can be applied to directly on Glassdoor. Defaults to false."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Token for fetching the next page of jobs, taken from the pagination of a previous response. The token keeps the filters of the search it came from, so they do not need to be sent again."
    }
  },
  "additionalProperties": false
}
hasdata_glassdoor_listing_getJobListings annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_finance_finance_getGoogleFinanceQuote — google_finance_finance: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Finance Quote Fetches one Google Finance quote by ticker (`q` as Google Finance writes it: `GOOGL:NASDAQ` for stocks and ETFs, `.INX:INDEXSP` for indexes, `VFIAX:MUTF` for mutual funds, `GCW00:COMEX` for futures, `EUR-USD` for currencies, `BTC-USD` for crypto). Returns `summary` (name, ticker, exchange, asset type, price as displayed and as a number, currency, previous close, price movement, quote time, and the pre-market/after-hours quote when Google shows one), `graph` price points with ISO dates and volume for the `window` time range (1D, 5D, 1M, 6M, YTD, 1Y, 5Y, MAX), `knowledgeGraph` key stats and company profile, `newsResults`, `financials` (income statement, balance sheet and cash flow for the last 8 quarters and every reported year, with year-over-year change), `discoverMore` related tickers, and `markets` index, currency, crypto and futures overviews. Every ticker carries a `hasdataLink` to fetch it with this API. An unknown ticker returns `suggestions` of matching tickers instead. Use it for price monitoring, portfolio dashboards, fundamentals research and market datasets.

hasdata_google_finance_finance_getGoogleFinanceQuote input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Ticker as Google Finance writes it, e.g. `GOOGL:NASDAQ`, `.INX:INDEXSP`, `EUR-USD` or `BTC-USD`. An unknown ticker returns `suggestions`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "window": {
      "enum": [
        "1D",
        "5D",
        "1M",
        "6M",
        "YTD",
        "1Y",
        "5Y",
        "MAX"
      ],
      "type": "string",
      "description": "Time range of the price chart in `graph`."
    }
  },
  "additionalProperties": false
}
hasdata_google_finance_finance_getGoogleFinanceQuote annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_images_images_getImageSearchResults — google_images_images: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Image Search Results Scrapes Google Images for a query with advanced filters (size, color, image type, safesearch, domain/country/language, device type) plus page-based pagination (ijn). Returns each image with title, source page URL, direct image URL, thumbnail, dimensions, source name, and position. Use for visual-asset discovery, reverse-image workflows, dataset collection for ML/CV training, brand/logo monitoring, stock-image sourcing, and grounding multimodal LLMs with fresh image context.

hasdata_google_images_images_getImageSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query term for retrieving image results."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "ijn": {
      "type": "number",
      "description": "Page number for paginated results, where 0 is the first page."
    },
    "tbs": {
      "type": "string",
      "description": "`tbs` parameter for the Google Images API customizes image search results with various filters that can be combined using commas. Here are the available options:\n\nImage Size Filters:\n  - `isz:l` - Search for large images.\n  - `isz:m` - Search for medium images.\n  - `isz:i` - Search for icon-sized images.\n  - `isz:lt,islt:qsvga` - Filter for images larger than 400×300.\n  - `isz:lt,islt:vga` - Filter for images larger than 640×480.\n  - `isz:lt,islt:svga` - Filter for images larger than 800×600.\n  - `isz:lt,islt:xga` - Filter for images larger than 1024×768.\n  - `isz:lt,islt:2mp` - Filter for images larger than 1600×1200.\n  - `isz:lt,islt:4mp` - Filter for images larger than 2272×1704.\n  - `isz:ex,iszw:1000,iszh:1000` - Search for images exactly 1000×1000.\n\nColor Filters:\n  - `ic:color` - Search for full-color images.\n  - `ic:gray` - Search for black and white images.\n  - `ic:specific,isc:red` (and other colors such as orange, yellow, green, etc.) - Search for images predominantly in specified colors.\n\nImage Type Filters:\n  - `itp:face` - Search for images of faces.\n  - `itp:photo` - Search for photographs.\n  - `itp:clipart` - Search for clipart images.\n  - `itp:lineart` - Search for line drawings.\n  - `itp:animated` - Search for animated images (GIFs).\n"
    },
    "safe": {
      "enum": [
        "active",
        "off"
      ],
      "type": "string",
      "description": "Adult Content Filtering option."
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    },
    "filter": {
      "type": "number",
      "description": "Defines whether to enable or disable the filters for 'Similar Results' and 'Omitted Results'. Set to 1 (default) to enable these filters, or 0 to disable them.\n"
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile",
        "tablet"
      ],
      "type": "string",
      "description": "Specify the device type for the search."
    }
  },
  "additionalProperties": false
}
hasdata_google_images_images_getImageSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_maps_contributor_reviews_getMapReviews — google_maps_contributor_reviews: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Map Contributor Reviews Lists all Google Maps reviews authored by a specific Local Guide / contributor by contributorId, with language/country targeting and nextPageToken pagination. Returns per-review rating, text, date, place name, place address, photos, and owner responses. Use for reviewer reputation checks, detecting fake/bot review patterns, local-guide activity analysis, and building review-author profiles for trust scoring.

hasdata_google_maps_contributor_reviews_getMapReviews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "contributorId"
  ],
  "properties": {
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "num": {
      "type": "number",
      "description": "Number of results per page, ranging from 10 to 200."
    },
    "contributorId": {
      "type": "string",
      "description": "Google Maps Contributor ID."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. It is used for retrieving the next page results."
    }
  },
  "additionalProperties": false
}
hasdata_google_maps_contributor_reviews_getMapReviews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_maps_photos_getMapPhotos — google_maps_photos: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Place Photos Fetches the photo gallery of a Google Maps place by dataId or placeId, paginated with nextPageToken and filterable by categoryId. Returns each photo with image URL and thumbnail. Use for restaurant-menu extraction, venue/ambience visual audits, building rich place detail pages, and sourcing up-to-date imagery for POI listings.

hasdata_google_maps_photos_getMapPhotos input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "dataId": {
      "type": "string",
      "description": "Google Maps data ID. Either dataId or placeId should be set."
    },
    "placeId": {
      "type": "string",
      "description": "Unique reference to a place on Google Maps. Either dataId or placeId should be set."
    },
    "categoryId": {
      "type": "string",
      "description": "Filters photos by category."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Token for fetching the next page of photos."
    }
  },
  "additionalProperties": false
}
hasdata_google_maps_photos_getMapPhotos annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_maps_place_getPlaceDetails — google_maps_place: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Place Details Fetches full Google Maps place data by placeId with optional domain/language localization. Returns name, address, coordinates, phone, website, categories, hours, rating, review count, price level, photos, attributes/amenities, and plus_code. With fetchWebResults, also returns the place panel's web results (the business's own site and its Instagram, Facebook, delivery and other listings) with title, link, displayed link and snippet. Use for local SEO audits, POI enrichment, lead generation, competitor mapping, and building location-aware agents.

hasdata_google_maps_place_getPlaceDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "placeId"
  ],
  "properties": {
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    },
    "placeId": {
      "type": "string",
      "description": "A unique identifier for the place. This ID can be obtained from Google Maps search results."
    },
    "fetchWebResults": {
      "type": "boolean",
      "description": "Also collect the place panel's \"Web results\" section (the business's website and its pages on Instagram, Facebook, delivery services, etc.) and return it as `webResults`. This takes an extra request to Google and costs 5 credits on top of the base. Default is false."
    }
  },
  "additionalProperties": false
}
hasdata_google_maps_place_getPlaceDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_maps_posts_getMapPosts — google_maps_posts: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Map Posts Fetches the latest Google Maps Posts (timeline-style updates such as offers, events, announcements, and notices) for a place by dataId or placeId, with language targeting. Returns per-post title, description, image, posted_at, link, and source/business name. Use for small-business intelligence, local-marketing monitoring, competitor activity tracking, and surfacing current promotions and events from local merchants.

hasdata_google_maps_posts_getMapPosts input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "dataId": {
      "type": "string",
      "description": "Google Maps data ID."
    },
    "placeId": {
      "type": "string",
      "description": "Unique reference to a place on a Google Map. Either dataId or placeId should be set."
    }
  },
  "additionalProperties": false
}
hasdata_google_maps_posts_getMapPosts annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_maps_reviews_getMapReviews — google_maps_reviews: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Map Reviews Paginated fetch of Google Maps reviews for a place by dataId or placeId, with sort (mostRelevant, newestFirst, ratingHigh, ratingLow), topicId filter, and language. Returns per-review author name and profile link, star rating, text, published/relative date, likes count, owner response, attached photos, and local-guide flag. Use for reputation management, sentiment and topic mining, competitor review benchmarking, and feeding review data into summarization or trust-score LLMs.

hasdata_google_maps_reviews_getMapReviews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "dataId": {
      "type": "string",
      "description": "Google Maps data ID."
    },
    "sortBy": {
      "enum": [
        "mostRelevant",
        "newestFirst",
        "ratingHigh",
        "ratingLow"
      ],
      "type": "string",
      "description": "Parameter used for sorting and refining results."
    },
    "placeId": {
      "type": "string",
      "description": "Unique reference to a place on a Google Map. Either dataId or placeId should be set."
    },
    "topicId": {
      "type": "string",
      "description": "Defines the ID of the topic you want to use for filtering reviews."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. It is used for retrieving the next page results."
    }
  },
  "additionalProperties": false
}
hasdata_google_maps_reviews_getMapReviews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_maps_search_performMapSearch — google_maps_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Maps Search Results Runs a Google Maps search by keyword plus optional GPS coordinates (@lat,lng,zoomz via `ll`) with language, country, domain, and offset-based pagination (start). Returns the local pack list with placeId, name, address, coordinates, rating, review count, price level, categories, phone, website, hours, and thumbnail. Use for local lead generation, competitor density mapping, market expansion research, hyperlocal directories, and feeding placeIds into the Maps Place, Reviews, or Photos endpoints.

hasdata_google_maps_search_performMapSearch input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query term or phrase."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "ll": {
      "type": "string",
      "description": "GPS coordinates of the location where the search query is to be performed. This parameter is required if the 'start' parameter is present. The format for the `ll` parameter is `@` followed by latitude, longitude, and zoom level, separated by commas. The latitude and longitude should be in decimal degrees, and the zoom level is an integer. Example: `@40.7455096,-74.0083012,14z`.\n"
    },
    "start": {
      "type": "number",
      "description": "Specifies the result offset for pagination purposes. The offset dictates the number of rows to skip from the beginning of the results. This is useful for accessing subsequent pages of search results. For example, an offset of 0 (the default value) returns the first page of results, 20 returns the second page, 40 returns the third page, and so on. This parameter is especially relevant when used in conjunction with the 'll' parameter for location-based searches.\n"
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    }
  },
  "additionalProperties": false
}
hasdata_google_maps_search_performMapSearch annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_scholar_case_law_getScholarCaseLawOpinion — google_scholar_case_law: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Scholar Case Law Opinion Looks up a Google Scholar Case Law opinion by its `caseId` (as returned in a google/scholar organic result's `caseId`, when searching with `asSdt` set to a case-law court scope, or in another case-law result's `citedCases`). Returns the case title, party names, court, procedural history, argued/decided dates, short citations, docket numbers, and every case cited within the opinion (grouped by cited case with a ready-to-call `hasdataLink`). Use to build legal-research and case-law-analysis workflows, or to walk a citation graph one cited case at a time.

hasdata_google_scholar_case_law_getScholarCaseLawOpinion input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "caseId"
  ],
  "properties": {
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "caseId": {
      "type": "string",
      "description": "The `caseId` of a Google Scholar case-law result, as returned by the google/scholar endpoint."
    }
  },
  "additionalProperties": false
}
hasdata_google_scholar_case_law_getScholarCaseLawOpinion annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_scholar_cite_getScholarCitationFormats — google_scholar_cite: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Scholar Citation Formats Looks up citation formats and export links for a single Google Scholar organic search result, identified by its `resultId` (as returned in a google/scholar organic result). Returns formatted citation snippets (MLA, APA, Chicago, Harvard, Vancouver) and reference-manager export links (BibTeX, EndNote, RefMan, RefWorks). Use to build citation/bibliography features or complete a research workflow started with google/scholar.

hasdata_google_scholar_cite_getScholarCitationFormats input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "The `resultId` of a Google Scholar organic result, as returned by the google/scholar endpoint."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    }
  },
  "additionalProperties": false
}
hasdata_google_scholar_cite_getScholarCitationFormats annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_scholar_scholar_getScholarSearchResults — google_scholar_scholar: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Scholar Search Results Scrapes Google Scholar for a query with author:/source: search helpers, year range (asYlo/asYhi), cited-by and all-versions lookups (cites/cluster), review-article and citation-inclusion filters, language/language-restrict, start/num pagination, and asSdt to scope to case law (asSdt=2006 for all courts, 2003 for Federal courts only, or 4/6/3 plus comma-separated court codes for specific courts) or toggle patents. Returns each organic result with title, link, snippet, publication info (authors with profile links), cited-by count and link, related-articles link, and all-versions count and link; a case-law result links to a scholar_case?case= page and carries a ready-to-call caseHasdataLink. Use for academic research, literature review automation, citation tracking, grounding research agents with scholarly sources, and walking case law straight into google/scholar-case-law.

hasdata_google_scholar_scholar_getScholarSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query. Supports Google Scholar search helpers such as `author:` and `source:`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "lr": {
      "type": "array",
      "items": {
        "enum": [
          "lang_ar",
          "lang_hy",
          "lang_bg",
          "lang_ca",
          "lang_cs",
          "lang_da",
          "lang_de",
          "lang_el",
          "lang_en",
          "lang_es",
          "lang_et",
          "lang_tl",
          "lang_fi",
          "lang_fr",
          "lang_hr",
          "lang_hi",
          "lang_hu",
          "lang_id",
          "lang_is",
          "lang_it",
          "lang_iw",
          "lang_he",
          "lang_ja",
          "lang_ko",
          "lang_lt",
          "lang_lv",
          "lang_nl",
          "lang_no",
          "lang_fa",
          "lang_pl",
          "lang_pt",
          "lang_ro",
          "lang_ru",
          "lang_sk",
          "lang_sl",
          "lang_sr",
          "lang_sv",
          "lang_th",
          "lang_tr",
          "lang_uk",
          "lang_vi",
          "lang_zh-CN",
          "lang_zh-TW"
        ],
        "type": "string"
      },
      "description": "The 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content."
    },
    "num": {
      "type": "number",
      "description": "Maximum number of results to return per page."
    },
    "asRr": {
      "type": "number",
      "description": "Set to 1 to return review articles only, or 0 (default) to return all articles."
    },
    "safe": {
      "enum": [
        "active",
        "off"
      ],
      "type": "string",
      "description": "Adult content filtering option."
    },
    "asSdt": {
      "type": "string",
      "description": "Search type/filter. Pick a value below to search case law from a specific court, or use `0,5` for Articles (default) / `7` to include patents. Any comma-separated court-code combination Google Scholar accepts also works here as free text beyond this list. Provide one exact documented value (302 allowed), e.g. `0,5`, `2007`."
    },
    "asVis": {
      "type": "number",
      "description": "Set to 1 to exclude citations from the results, or 0 (default) to include them."
    },
    "asYhi": {
      "type": "number",
      "description": "Return results published up to and including this year."
    },
    "asYlo": {
      "type": "number",
      "description": "Return results published from this year onward."
    },
    "cites": {
      "type": "string",
      "description": "Unique article ID to look up articles that cite it, as returned in a result's `citedBy.citesId`."
    },
    "start": {
      "type": "number",
      "description": "Result offset for pagination, where 0 is the first result."
    },
    "filter": {
      "type": "number",
      "description": "Defines whether to enable or disable the filters for 'Similar Results' and 'Omitted Results'. Set to 1 (default) to enable these filters, or 0 to disable them.\n"
    },
    "scisbd": {
      "type": "number",
      "description": "Sort results by date instead of relevance: 1 for abstracts only, 2 for everything. Omit for relevance sorting."
    },
    "cluster": {
      "type": "string",
      "description": "Unique article ID to look up all indexed versions of that article, as returned in a result's `versions.clusterId`."
    }
  },
  "additionalProperties": false
}
hasdata_google_scholar_scholar_getScholarSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_ai_mode_getAiModeResponse — google_serp_ai_mode: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get AI Mode SERP Results Captures Gemini-powered AI Mode answers from Google Search. Returns the conversational response text, cited source links, subtopic breakdowns, and, when continuable is set, a subsequentRequestToken for multi-turn continuation. Use for next-gen search interfaces, AI-answer monitoring, citation tracking, content research agents, building question-answering pipelines grounded in live Google results, and person/company data enrichment — e.g. asking `Who is the CEO of HasData?`, `What is Roman Milyushkevich's LinkedIn?`, `HasData founder email`, `HasData Instagram handle` to get a synthesized answer plus source URLs in one call, ideal for lead enrichment, sales research, people search, and filling in contact/attribute gaps for CRM records.

hasdata_google_serp_ai_mode_getAiModeResponse input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to scrape the SERP."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    },
    "continuable": {
      "type": "boolean",
      "description": "Whether to continue an existing AI Mode conversation."
    },
    "subsequentRequestToken": {
      "type": "string",
      "description": "Token used to continue a previous AI Mode request."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_ai_mode_getAiModeResponse annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_ai_overview_getAiOverviewResponse — google_serp_ai_overview: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get AI Overview Results Fetches the lazy-loaded Google AI Overview block via a pageToken returned by the Google SERP API (token valid for 1 minute). Returns the AI-generated answer text, referenced source URLs, and expanded subtopic sections. Use as a follow-up call to Google SERP for tracking AI citations in SEO, fact-checking answers against sources, and LLM retrieval pipelines grounded in live Google results.

hasdata_google_serp_ai_overview_getAiOverviewResponse input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "pageToken"
  ],
  "properties": {
    "pageToken": {
      "type": "string",
      "description": "Token from `aiOverview` block in Google SERP API. Valid for 1 minute."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_ai_overview_getAiOverviewResponse annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_events_getEventInformation — google_serp_events: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Event Details Looks up a single Google event by the `pageToken` returned in a `google/serp` response's `eventsResults` array (or the ready-to-call `hasdataLink` next to it). Returns the venue name/rating/reviews/website/phone, a map link, a description, ticket sources (with official/unofficial flags), and the primary ticket link — details the SERP events widget does not show inline. The `pageToken` expires a few minutes after it is minted, so fetch it and call this endpoint promptly. Use to enrich an events search result with full venue and ticketing information.

hasdata_google_serp_events_getEventInformation input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "pageToken"
  ],
  "properties": {
    "pageToken": {
      "type": "string",
      "description": "Token identifying a single event, taken from the `pageToken` field of an `eventsResults` entry in a `google/serp` response. Expires a few minutes after it is minted."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_events_getEventInformation annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_immersive_product_getImmersive_e29f691177 — google_serp_immersive_product: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Immersive Product Information Expands the Google Shopping Immersive Product pop-up given an immersiveProductPageToken from the Google Shopping API, with optional moreStores (up to ~13 merchants instead of 3–5) and nextPageToken for paginating stores. Returns multi-store offers (merchant, price, shipping, URL), product specs, images, ratings, and the storesNextPageToken. Use for price-comparison bots, merchant discovery, dropshipping research, and aggregating full offer lists per product.

hasdata_google_serp_immersive_product_getImmersive_e29f691177 input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "pageToken"
  ],
  "properties": {
    "pageToken": {
      "type": "string",
      "description": "Token for displaying more product info in the Google immersive pop-up, available in the Google Shopping API response as the `immersiveProductPageToken` property."
    },
    "moreStores": {
      "type": "boolean",
      "description": "Fetch additional store results in a single search. By default it returns 3–5 stores, and when true it returns up to 13 or the maximum available for the product."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Token used to retrieve the next page of store results."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_immersive_product_getImmersive_e29f691177 annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_news_getGoogleNews — google_serp_news: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google News Results Retrieves Google News results by free-text query, topicToken (World, Business, Technology, etc.), sectionToken, publicationToken (e.g. CNN, BBC), or storyToken (full-coverage cluster with sort by relevance/date). Returns article title, snippet, source publisher, published date, thumbnail, and URL, plus tokens for navigating topics, sub-sections, and story clusters. Use for news monitoring, brand/PR tracking, topical aggregators, publisher-specific feeds, and drilling into full story coverage.

hasdata_google_serp_news_getGoogleNews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "q": {
      "type": "string",
      "description": "Free-text query as used on news.google.com. Not allowed with `topicToken`, `storyToken`, or `publicationToken`."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "so": {
      "enum": [
        "0",
        "1"
      ],
      "type": "string",
      "description": "Sort order for articles in a story. Use only with storyToken."
    },
    "storyToken": {
      "type": "string",
      "description": "Token for a single news story cluster (the “Full coverage” page)."
    },
    "topicToken": {
      "type": "string",
      "description": "Token for a Google News topic such as World, Business, or Technology. Not allowed with `q`, `storyToken`, or `publicationToken`."
    },
    "sectionToken": {
      "type": "string",
      "description": "Token for a sub-section under a topic, for example Business → Economy. Use only when `topicToken` or `publicationToken` is present."
    },
    "publicationToken": {
      "type": "string",
      "description": "Token for a specific publisher such as CNN or BBC. Not allowed with `q`, `storyToken`, or `topicToken`."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_news_getGoogleNews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_product_getProductInformation — google_serp_product: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Product Information Pulls detailed product data from Google Shopping by productId with searchType (offers, specs, reviews) and rich filters (free shipping, used-condition, sort by price/total price/deals/seller rating, reviews count). Returns product title, images, price, ratings, specs, merchant offers (seller, shipping, condition, total price), and review text depending on searchType. Use for price intelligence, catalog enrichment, review mining, competitor spec comparison, and building shopping assistants that surface the cheapest or highest-rated offer.

hasdata_google_serp_product_getProductInformation input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "productId"
  ],
  "properties": {
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "start": {
      "type": "number",
      "description": "This parameter specifies the number of search results to skip and is used for pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page.\n\nThis parameter is applicable only when `searchType=offers` is specified. For reviews pagination use `filter` parameter.\n"
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    },
    "filter": {
      "type": "string",
      "description": "Filter parameter for refining search results. Supports various filters for offers and reviews. Multiple filters can be passed using a comma. The available filters are:\n\nOffers filters:\n- `freeship:1`: Show only products with free shipping.\n- `ucond:1`: Show only used products.\n- `scoring:p`: Sort by base price.\n- `scoring:tp`: Sort by total price.\n- `scoring:cpd`: Sort by current promotion deals (special offers).\n- `scoring:mrd`: Sort by seller's rating.\n\nReviews filters:\n- `rnum:{number}`: Number of results (100 is max).\n"
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    },
    "productId": {
      "type": "string",
      "description": "The product ID to get results for."
    },
    "searchType": {
      "enum": [
        "offers",
        "specs",
        "reviews"
      ],
      "type": "string",
      "description": "Parameter for fetching specific product information, such as 'offers', 'specs', or 'reviews'."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_product_getProductInformation annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_serp_getSearchResults — google_serp_serp: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Search Results Full-featured Google Search scraper with location/uule, country (gl), language (hl, lr), domain, device type, safesearch, time/date filters via tbs (qdr, cdr), and tbm vertical selection (images, videos, news, shopping, local), plus offset/num pagination (num capped at 10 without tbm). Returns organic results (title, link, snippet, position), ads, knowledge graph, related searches, People Also Ask, local pack, featured snippets, AI Overview pageToken, and rich SERP features. Use for SEO rank tracking, keyword research, SERP-feature monitoring, competitor analysis, grounding LLMs with fresh location-aware search data, and especially for person/company data enrichment — e.g. finding a person's LinkedIn/Instagram/Twitter profile (`Roman Milyushkevich LinkedIn`, `HasData Instagram`), a company's CEO/founder/leadership (`HasData CEO`, `HasData founder`), contact emails (`Roman Milyushkevich HasData email`), phone numbers, GitHub profiles, press mentions, or any public attribute of a person or business by running a targeted query and parsing the top organic results.

hasdata_google_serp_serp_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to scrape the SERP."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "lr": {
      "type": "array",
      "items": {
        "enum": [
          "lang_ar",
          "lang_hy",
          "lang_bg",
          "lang_ca",
          "lang_cs",
          "lang_da",
          "lang_de",
          "lang_el",
          "lang_en",
          "lang_es",
          "lang_et",
          "lang_tl",
          "lang_fi",
          "lang_fr",
          "lang_hr",
          "lang_hi",
          "lang_hu",
          "lang_id",
          "lang_is",
          "lang_it",
          "lang_iw",
          "lang_he",
          "lang_ja",
          "lang_ko",
          "lang_lt",
          "lang_lv",
          "lang_nl",
          "lang_no",
          "lang_fa",
          "lang_pl",
          "lang_pt",
          "lang_ro",
          "lang_ru",
          "lang_sk",
          "lang_sl",
          "lang_sr",
          "lang_sv",
          "lang_th",
          "lang_tr",
          "lang_uk",
          "lang_vi",
          "lang_zh-CN",
          "lang_zh-TW"
        ],
        "type": "string"
      },
      "description": "The 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content."
    },
    "si": {
      "type": "string",
      "description": "Google Cached Search Parameters ID."
    },
    "lat": {
      "type": "number",
      "description": "GPS latitude for the search origin."
    },
    "lon": {
      "type": "number",
      "description": "GPS longitude for the search origin."
    },
    "num": {
      "type": "number",
      "description": "Number of results per page, ranging from 10 to 100."
    },
    "tbm": {
      "enum": [
        "isch",
        "vid",
        "nws",
        "shop",
        "lcl"
      ],
      "type": "string",
      "description": "Specify the type of search."
    },
    "tbs": {
      "type": "string",
      "description": "This parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters:\n\n  - Specific Time Range: `cdr:1,cd_min:10/17/2018,cd_max:3/8/2021` - Filter results to show only those within the defined date range.\n  - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest.\n  - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query.\n  - Sites with Images: `img:1` - Only show results from webpages that contain images.\n\nQuick Date Range (qdr):\n  - `qdr:h` - Show results from the past hour.\n  - `qdr:d` - Limit results to the past day.\n  - `qdr:w` - Filter results from the week.\n  - `qdr:m` - Display results from the past month.\n  - `qdr:y` - Show results from the past year.\n  - `qdr:h10`, `qdr:d10`, `qdr:w10`, `qdr:m10`, `qdr:y10` - Specify a number to show results from the last 10 hours, days, weeks, months, or years respectively.\n\nThese filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria.\n"
    },
    "lsig": {
      "type": "string",
      "description": "Additional Google Place ID."
    },
    "nfpr": {
      "type": "number",
      "description": "Controls if auto-corrected results are shown. 0 includes them (default), 1 shows only the original query. Google may still return auto-corrected results if no others are available.\n"
    },
    "safe": {
      "enum": [
        "active",
        "off"
      ],
      "type": "string",
      "description": "Adult Content Filtering option."
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "kgmid": {
      "type": "string",
      "description": "Google Knowledge Graph ID."
    },
    "start": {
      "type": "number",
      "description": "This parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page.\n\nFor Google Local Results, the start value must be in multiples of 20, such as 20 for the second page, 40 for the third page, etc.\n"
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    },
    "filter": {
      "type": "number",
      "description": "Defines whether to enable or disable the filters for 'Similar Results' and 'Omitted Results'. Set to 1 (default) to enable these filters, or 0 to disable them.\n"
    },
    "radius": {
      "type": "number",
      "description": "Radius around the search origin in meters."
    },
    "ludocid": {
      "type": "string",
      "description": "The Google Place ID for a specific location."
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile",
        "tablet"
      ],
      "type": "string",
      "description": "Specify the device type for the search."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_serp_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_serp_light_getSearchResults — google_serp_serp_light: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Light Search Results Google Search scraper served from the lightweight no-JS layout, cheaper and faster than the full SERP API. Returns organic results (title, link, displayed link, snippet, sitelinks, extensions, date, rating and review count), AI Overview with its text blocks and source references, answer box (featured snippet, calculator, unit and currency conversion, local time), knowledge graph, related questions, related searches, inline images, local pack, search filters, pagination, spelling correction and the location Google actually applied. Shopping, top stories, news, videos and jobs blocks are not served in this layout. Supports location/uule, country (gl), language (hl/lr), domain, safesearch, and time/date filters via tbs (qdr, cdr) with offset/num pagination (num capped at 10). Use for high-volume keyword monitoring, bulk rank tracking, backlink discovery, and AI Overview presence tracking.

hasdata_google_serp_serp_light_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to scrape the SERP."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "lr": {
      "type": "array",
      "items": {
        "enum": [
          "lang_ar",
          "lang_hy",
          "lang_bg",
          "lang_ca",
          "lang_cs",
          "lang_da",
          "lang_de",
          "lang_el",
          "lang_en",
          "lang_es",
          "lang_et",
          "lang_tl",
          "lang_fi",
          "lang_fr",
          "lang_hr",
          "lang_hi",
          "lang_hu",
          "lang_id",
          "lang_is",
          "lang_it",
          "lang_iw",
          "lang_he",
          "lang_ja",
          "lang_ko",
          "lang_lt",
          "lang_lv",
          "lang_nl",
          "lang_no",
          "lang_fa",
          "lang_pl",
          "lang_pt",
          "lang_ro",
          "lang_ru",
          "lang_sk",
          "lang_sl",
          "lang_sr",
          "lang_sv",
          "lang_th",
          "lang_tr",
          "lang_uk",
          "lang_vi",
          "lang_zh-CN",
          "lang_zh-TW"
        ],
        "type": "string"
      },
      "description": "The 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content."
    },
    "num": {
      "type": "number",
      "description": "Number of results per page, ranging from 10 to 100."
    },
    "tbs": {
      "type": "string",
      "description": "This parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters:\n\n  - Specific Time Range: `cdr:1,cd_min:10/17/2018,cd_max:3/8/2021` - Filter results to show only those within the defined date range.\n  - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest.\n  - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query.\n  - Sites with Images: `img:1` - Only show results from webpages that contain images.\n\nQuick Date Range (qdr):\n  - `qdr:h` - Show results from the past hour.\n  - `qdr:d` - Limit results to the past day.\n  - `qdr:w` - Filter results from the week.\n  - `qdr:m` - Display results from the past month.\n  - `qdr:y` - Show results from the past year.\n  - `qdr:h10`, `qdr:d10`, `qdr:w10`, `qdr:m10`, `qdr:y10` - Specify a number to show results from the last 10 hours, days, weeks, months, or years respectively.\n\nThese filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria.\n"
    },
    "safe": {
      "enum": [
        "active",
        "off"
      ],
      "type": "string",
      "description": "Adult Content Filtering option."
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "start": {
      "type": "number",
      "description": "This parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page.\n\nFor Google Local Results, the start value must be in multiples of 20, such as 20 for the second page, 40 for the third page, etc.\n"
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    },
    "filter": {
      "type": "number",
      "description": "Defines whether to enable or disable the filters for 'Similar Results' and 'Omitted Results'. Set to 1 (default) to enable these filters, or 0 to disable them.\n"
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_serp_light_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_shopping_getSearchResults — google_serp_shopping: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Shopping Search Results Scrapes Google Shopping listings for a query with location/uule, country/language/domain, time/date filters, device type, shoprs filter-helper IDs, and offset pagination. Returns product title, price, merchant/source, rating, reviews count, thumbnail, product link, productId, immersiveProductPageToken, and filter chips with hasdata_link for refining by brand/price/condition/promotions. Use for e-commerce price tracking, catalog building, promotion discovery, and feeding productIds into the Product API or tokens into the Immersive Product API for deeper data.

hasdata_google_serp_shopping_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to scrape the SERP."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "tbs": {
      "type": "string",
      "description": "This parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters:\n\n  - Specific Time Range: `cdr:1,cd_min:10/17/2018,cd_max:3/8/2021` - Filter results to show only those within the defined date range.\n  - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest.\n  - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query.\n  - Sites with Images: `img:1` - Only show results from webpages that contain images.\n\nQuick Date Range (qdr):\n  - `qdr:h` - Show results from the past hour.\n  - `qdr:d` - Limit results to the past day.\n  - `qdr:w` - Filter results from the week.\n  - `qdr:m` - Display results from the past month.\n  - `qdr:y` - Show results from the past year.\n  - `qdr:h10`, `qdr:d10`, `qdr:w10`, `qdr:m10`, `qdr:y10` - Specify a number to show results from the last 10 hours, days, weeks, months, or years respectively.\n\nThese filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria.\n"
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "start": {
      "type": "number",
      "description": "This parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 40 refers to the second page, and 80 to the third page.\n"
    },
    "domain": {
      "type": "string",
      "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`."
    },
    "shoprs": {
      "type": "string",
      "description": "Specifies the helper ID for applying search filters. Must be used with the updated `q` parameter, which includes the selected filter (e.g., Coffee sale).\n\nTo apply filters, use the `hasdata_link` from `filters[index].options[index]` in the JSON. Apply multiple filters by following each `hasdata_link` one by one.\n\nTo remove a filter, follow its specific `hasdata_link`.\n"
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile",
        "tablet"
      ],
      "type": "string",
      "description": "Specify the device type for the search."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_shopping_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_serp_short_videos_getShortVideosSearchResults — google_serp_short_videos: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Short Videos Search Results Scrapes the Google Short Videos carousel (TikTok, YouTube Shorts, Instagram Reels, etc.) for a query with location/uule, country (gl/cr), language (hl/lr), device type, and page-based pagination. Supports Google's advanced filters (tbs). Returns video title, thumbnail, duration, source platform, channel/creator, direct video URL, the platform's video ID and profile handle, and ready-to-call HasData API links (hasdataLinks) for the video's comments, transcript, profile, posts or channel. Use for short-form content discovery, viral-trend monitoring, influencer research, cross-platform video aggregation, and sourcing short clips to summarize or embed in LLM responses.

hasdata_google_serp_short_videos_getShortVideosSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query term for retrieving short videos results."
    },
    "cr": {
      "type": "string",
      "description": "The country code for the country you want to limit the search to. Provide one exact documented value (237 allowed), e.g. `countryAF`, `countryAL`."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "lr": {
      "type": "array",
      "items": {
        "enum": [
          "lang_ar",
          "lang_hy",
          "lang_bg",
          "lang_ca",
          "lang_cs",
          "lang_da",
          "lang_de",
          "lang_el",
          "lang_en",
          "lang_es",
          "lang_et",
          "lang_tl",
          "lang_fi",
          "lang_fr",
          "lang_hr",
          "lang_hi",
          "lang_hu",
          "lang_id",
          "lang_is",
          "lang_it",
          "lang_iw",
          "lang_he",
          "lang_ja",
          "lang_ko",
          "lang_lt",
          "lang_lv",
          "lang_nl",
          "lang_no",
          "lang_fa",
          "lang_pl",
          "lang_pt",
          "lang_ro",
          "lang_ru",
          "lang_sk",
          "lang_sl",
          "lang_sr",
          "lang_sv",
          "lang_th",
          "lang_tr",
          "lang_uk",
          "lang_vi",
          "lang_zh-CN",
          "lang_zh-TW"
        ],
        "type": "string"
      },
      "description": "The 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content."
    },
    "tbs": {
      "type": "string",
      "description": "Google advanced search filters, combined with commas. For example:\n\n  - `qdr:h`, `qdr:d`, `qdr:w`, `qdr:m`, `qdr:y` - Show videos from the past hour, day, week, month, or year.\n"
    },
    "page": {
      "type": "number",
      "description": "Page number for paginated results, where 0 is the first page."
    },
    "uule": {
      "type": "string",
      "description": "The encoded location parameter."
    },
    "location": {
      "type": "string",
      "description": "Google canonical location for the search."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile",
        "tablet"
      ],
      "type": "string",
      "description": "Specify the device type for the search."
    }
  },
  "additionalProperties": false
}
hasdata_google_serp_short_videos_getShortVideosSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_travel_flights_getGoogleFlights — google_travel_flights: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Flights Results Searches Google Flights for one-way, round-trip, or multi-city itineraries with passenger mix (adults, children, infants in-seat/on-lap), travel class, bags, max price, sort order (price, duration, emissions, departure/arrival time), stops, include/exclude airlines and connections, time windows, layover duration, and deep-search mode. Returns per-itinerary price, total duration, stops, flight legs with airline, flight number, aircraft, departure/arrival airports and times, CO2 emissions, plus booking and departure tokens for round-trip returns or booking options. Use for travel-planning agents, fare monitoring, corporate travel dashboards, emission-aware trip optimization, and comparing routes and airlines across markets.

hasdata_google_travel_flights_getGoogleFlights input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "departureId",
    "arrivalId",
    "outboundDate"
  ],
  "properties": {
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "bags": {
      "type": "number",
      "description": "Number of carry-on bags per passenger.\n"
    },
    "type": {
      "enum": [
        "roundTrip",
        "oneWay",
        "multiCity"
      ],
      "type": "string",
      "description": "Specifies the type of flight. Options:\n\n  - `roundTrip` (default)\n  - `oneWay`\n  - `multiCity` (requires `multiCityJson` for flight details)\n\nFor round trips, retrieve return flight details with a separate request using `departureToken`.\n"
    },
    "stops": {
      "enum": [
        "nonStop",
        "oneStopOrFewer",
        "twoStopsOrFewer"
      ],
      "type": "string",
      "description": "Restrict the number of stops (layovers) in the flight itinerary.\n"
    },
    "adults": {
      "type": "number",
      "description": "Number of adult passengers (>= 1 if specified).\n"
    },
    "sortBy": {
      "enum": [
        "topFlights",
        "price",
        "departureTime",
        "arrivalTime",
        "duration",
        "emissions"
      ],
      "type": "string",
      "description": "Sort the flight results based on price, departure time, arrival time, etc.\n"
    },
    "children": {
      "type": "number",
      "description": "Number of child passengers.\n"
    },
    "currency": {
      "type": "string",
      "description": "Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`."
    },
    "maxPrice": {
      "type": "number",
      "description": "Maximum price limit for the flight search, in the selected currency.\n"
    },
    "arrivalId": {
      "type": "string",
      "description": "Specifies the arrival airport code (IATA) or location kgmid.\n\n  - **IATA Code**: A 3-letter uppercase code (e.g., `SFO` for San Francisco, `LHR` for London Heathrow). Search on [IATA](https://www.iata.org/en/publications/directories/code-search).\n  - **Location kgmid**: A string starting with `/m/`, found in Wikidata under \"Freebase ID\" (e.g., `/m/02_286` for New York, NY).\n\nMultiple values can be separated by commas (e.g., `JFK,LGA,/m/0hptm`).\n"
    },
    "deepSearch": {
      "type": "boolean",
      "description": "Enable deep search. Returns the same results as Google Flights in a browser, but takes longer to respond. Default is `false`.\n"
    },
    "returnDate": {
      "type": "string",
      "description": "The return travel date in 'yyyy-MM-dd' format. Required when **type** is `roundTrip`.\n"
    },
    "showHidden": {
      "type": "boolean",
      "description": "Indicates whether to include hidden options in the results.\n"
    },
    "departureId": {
      "type": "string",
      "description": "Specifies the departure airport code (IATA) or location kgmid.\n\n  - **IATA Code**: A 3-letter uppercase code (e.g., SFO for San Francisco, LHR for London Heathrow). Search on [IATA](https://www.iata.org/en/publications/directories/code-search).\n  - **Location kgmid**: A string starting with `/m/`, found in Wikidata under \"Freebase ID\" (e.g., `/m/02_286` for New York, NY).\n\nMultiple values can be separated by commas (e.g., `JFK,LGA,/m/0hptm`).\n"
    },
    "maxDuration": {
      "type": "number",
      "description": "The maximum total flight duration in minutes.\n"
    },
    "returnTimes": {
      "type": "string",
      "description": "Set up to 4 time boundaries (2 for departure, 2 for arrival) to filter return flights. Each number represents the start of an hour.\n\nExamples:\n  - `6,20` → 6:00 AM - 9:00 PM departure\n  - `1,15` → 1:00 AM - 4:00 PM departure\n  - `7,18,2,21` → 7:00 AM - 9:00 PM departure, 2:00 AM - 10:00 PM arrival\n"
    },
    "travelClass": {
      "enum": [
        "economy",
        "premiumEconomy",
        "business",
        "first"
      ],
      "type": "string",
      "description": "The travel class for the flight (Economy, Premium Economy, Business, or First).\n"
    },
    "bookingToken": {
      "type": "string",
      "description": "Used to request booking options for selected flights. This token is found in the flight results and cannot be used with `departureToken`.\n"
    },
    "infantsOnLap": {
      "type": "number",
      "description": "Number of infants sitting on an adult's lap.\n"
    },
    "outboundDate": {
      "type": "string",
      "description": "The outbound travel date in 'yyyy-MM-dd' format.\n"
    },
    "infantsInSeat": {
      "type": "number",
      "description": "Number of infants occupying seats.\n"
    },
    "lessEmissions": {
      "type": "boolean",
      "description": "Prefer flight options with lower carbon emissions.\n"
    },
    "multiCityJson": {
      "type": "string",
      "description": "This parameter specifies flight details for multi-city trips. It is a JSON string containing multiple flight objects. Each object must include the following fields:\n\n- **departureId** – The departure airport code or location KGMID. Uses the same format as the main `departureId` parameter.\n- **arrivalId** – The arrival airport code or location KGMID. Uses the same format as the main `arrivalId` parameter.\n- **date** – The flight date. Uses the same format as the `outboundDate` parameter.\n- **times** *(optional)* – The time range for the flight. Uses the same format as the `outboundTimes` parameter.\n"
    },
    "outboundTimes": {
      "type": "string",
      "description": "Set up to 4 time boundaries (2 for departure, 2 for arrival) to filter flights. Each number represents the start of an hour.\n\nExamples:\n  - `6,20` → 6:00 AM - 9:00 PM departure\n  - `1,15` → 1:00 AM - 4:00 PM departure\n  - `7,18,2,21` → 7:00 AM - 9:00 PM departure, 2:00 AM - 10:00 PM arrival\n"
    },
    "departureToken": {
      "type": "string",
      "description": "Used to select a flight and retrieve return flights for a round trip or the next leg of the itinerary for a multi-city trip.\n"
    },
    "excludeAirlines": {
      "type": "string",
      "description": "A comma separated list of airline codes to exclude from results. You can search for airline codes on [IATA](https://www.iata.org/en/publications/directories/code-search). For example, `UA` is United Airlines.\n"
    },
    "includeAirlines": {
      "type": "string",
      "description": "A comma separated list of airline codes to exclusively include in results. You can search for airline codes on [IATA](https://www.iata.org/en/publications/directories/code-search). For example, `UA` is United Airlines.\n\n`excludeAirlines` and `includeAirlines` parameters can't be used together.\n"
    },
    "layoverDuration": {
      "type": "string",
      "description": "Set the maximum layover duration in minutes to filter flights. For example, `120, 360` filters layovers between 2 hours and 6 hours, while `45, 180` allows layovers from 45 minutes to 3 hours.\n"
    },
    "excludeConnections": {
      "type": "string",
      "description": "A comma separated list of specific airports to exclude as connections.\n"
    },
    "includeConnections": {
      "type": "string",
      "description": "A comma separated list of specific airports to allow as connections.\n"
    }
  },
  "additionalProperties": false
}
hasdata_google_travel_flights_getGoogleFlights annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_travel_flights_deals_getGoogleFlightsDeals — google_travel_flights_deals: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Flights Deals Results Turns a plain-language trip description ("I would like to see cherry blossom in Japan", "beach escape", "fireworks festival in Hong Kong") into flight deals from one origin airport, with Google's AI choosing the destinations and travel dates. Each deal carries outbound and return dates, price, flight duration, trip length in days, number of stops, operating airline, departure and arrival airports, and a direct Google Flights booking link; typical price with the discount against it, and a destination description with a photo, come back only for searches Google shaped itself. Also returns the date range Google derived from the query. Filters cover trip type, cabin class, stops, dates, trip length, price and duration ceilings, airlines and party size. Use for inspiration-driven travel search, seasonal and event-based fare discovery, deal alerting, and travel-content generation.

hasdata_google_travel_flights_deals_getGoogleFlightsDeals input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q",
    "departureId"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Free-text trip description, from a bare place name to a full sentence:\n\n  - **Destination**: `Tokyo`\n  - **Type of trip**: `beach escape`, `weekend getaway in Europe`\n  - **Season or event**: `I would like to see cherry blossom in Japan`\n\nWhen the query implies a time of year, Google dates it itself and reports the range in `searchInformation.dateRange`.\n"
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "type": {
      "enum": [
        "1",
        "roundTrip",
        "2",
        "oneWay"
      ],
      "type": "string",
      "description": "Flight type. Requires `arrivalId`.\n\n  - `1` / `roundTrip` — round trip (default)\n  - `2` / `oneWay` — one way\n\nA one-way deal carries no `returnDate` and no `tripLengthDays`.\n"
    },
    "stops": {
      "enum": [
        "1",
        "nonStop",
        "2",
        "oneStopOrFewer",
        "3",
        "twoStopsOrFewer"
      ],
      "type": "string",
      "description": "Maximum number of stops. Requires `arrivalId`. Omitted, any number is allowed.\n\n  - `1` / `nonStop` — direct flights only\n  - `2` / `oneStopOrFewer` — at most one connection\n  - `3` / `twoStopsOrFewer` — at most two connections\n\nA route with nothing at that depth returns an empty `flightDeals` array, not an error — `nonStop` on a route without a direct flight is a valid, empty answer.\n"
    },
    "adults": {
      "type": "number",
      "description": "Number of adults. Prices cover the whole party, so raising this raises every deal price.\n\nPassenger counts reprice rather than narrow the search, so they need no `arrivalId`. The whole party must not exceed 9.\n"
    },
    "children": {
      "type": "number",
      "description": "Number of children, priced at their own fare. Counts towards the limit of 9 passengers.\n"
    },
    "currency": {
      "type": "string",
      "description": "Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`."
    },
    "maxPrice": {
      "type": "number",
      "description": "Maximum ticket price, inclusive. Requires `arrivalId`. Omitted, it is unbounded.\n\nRead in the currency of the request: `650` means 650 EUR when `currency` is `EUR`, and 650 USD by default.\n"
    },
    "arrivalId": {
      "type": "string",
      "description": "Pins the search to one destination instead of letting Google pick from the query.\n\n  - **IATA code**: 3 uppercase letters, e.g. `NRT` for Tokyo Narita.\n  - **Location kgmid**: starts with `/m/`, found in Wikidata under \"Freebase ID\", e.g. `/m/07dfk` for Tokyo.\n\nRequired by every filter: `type`, `travelClass`, `stops`, `outboundDate`, `returnDate`, `travelDuration`, `tripLength`, `maxPrice`, `maxDuration`, `includeAirlines` and `excludeAirlines`. Without it Google drops them silently.\n"
    },
    "returnDate": {
      "type": "string",
      "description": "When to return, in the same exact-or-window spelling as `outboundDate`, which is required alongside it.\n\nCannot be combined with `travelDuration` or `tripLength` — all three set the trip length. Ignored when `type` is `oneWay`.\n"
    },
    "tripLength": {
      "type": "string",
      "description": "Trip length in days. Requires `arrivalId`. Cannot be combined with `returnDate` or `travelDuration`.\n\n  - **Exact**: `7`\n  - **Range**: `5,10` — min first\n\nPairs with `outboundDate` to limit the departure period. Ignored when `type` is `oneWay`.\n"
    },
    "departureId": {
      "type": "string",
      "description": "Departure airport as a 3-letter uppercase IATA code, e.g. `LAX` or `LHR`. Search on [IATA](https://www.iata.org/en/publications/directories/code-search).\n\nOne airport per search; city names are not accepted.\n"
    },
    "maxDuration": {
      "type": "number",
      "description": "Maximum flight duration in minutes — `1500` for 25 hours. Requires `arrivalId`. Omitted, it is unbounded. Applies to each leg, not to the round trip.\n\nGoogle measures against a longer figure than the `durationMinutes` it returns, so set the ceiling above the flight you want: on a route whose shortest deal is 635 minutes, `635` comes back empty and `680` returns it. On an empty result, raise `maxDuration` by up to 200 before concluding the route has nothing.\n"
    },
    "travelClass": {
      "enum": [
        "1",
        "economy",
        "2",
        "premiumEconomy",
        "3",
        "business",
        "4",
        "first"
      ],
      "type": "string",
      "description": "Travel class. Requires `arrivalId`.\n\n  - `1` / `economy` — economy (default)\n  - `2` / `premiumEconomy` — premium economy\n  - `3` / `business` — business\n  - `4` / `first` — first\n\nFares climb steeply: on LAX-NRT the same search ran $730 in economy against $2882 in business.\n"
    },
    "infantsOnLap": {
      "type": "number",
      "description": "Number of infants on an adult's lap. Counts towards the limit of 9 passengers.\n\nGoogle prices a lap infant above one in its own seat — the opposite of how airlines usually charge.\n"
    },
    "outboundDate": {
      "type": "string",
      "description": "When to depart. Requires `arrivalId`.\n\n  - **Exact date**: `2026-12-10`\n  - **Window**: `2026-12-01,2026-12-10` — any day within it\n\nOmitted, Google picks the dates from the query, or from whatever is cheapest.\n"
    },
    "infantsInSeat": {
      "type": "number",
      "description": "Number of infants in their own seat. Counts towards the limit of 9 passengers.\n"
    },
    "travelDuration": {
      "enum": [
        "1",
        "week",
        "2",
        "weekend",
        "3",
        "twoWeeks"
      ],
      "type": "string",
      "description": "Preset trip length. Requires `arrivalId`. Cannot be combined with `returnDate` or `tripLength`.\n\n  - `1` / `week` — about a week (6-8 days)\n  - `2` / `weekend` — a weekend (2-3 days)\n  - `3` / `twoWeeks` — about two weeks (13-15 days)\n\nPairs with `outboundDate` to limit the departure period. Ignored when `type` is `oneWay`.\n"
    },
    "excludeAirlines": {
      "type": "string",
      "description": "Drops these airlines from the deals. Requires `arrivalId`. Cannot be combined with `includeAirlines`.\n\nTakes the same values as `includeAirlines`.\n"
    },
    "includeAirlines": {
      "type": "string",
      "description": "Keeps only these airlines. Requires `arrivalId`. Cannot be combined with `excludeAirlines`.\n\nComma-separated 2-character IATA codes (`AF`, `UA`, `B6`) and Google's alliances `STAR_ALLIANCE`, `SKYTEAM`, `ONEWORLD`. The two can be mixed.\n\nAn airline that does not serve the route returns an empty `flightDeals` array, not an error.\n"
    }
  },
  "additionalProperties": false
}
hasdata_google_travel_flights_deals_getGoogleFlightsDeals annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_travel_hotels_getGoogleHotels — google_travel_hotels: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Hotels Results Searches Google Hotels for hotels and vacation rentals with check-in/check-out dates, guest mix (adults, children with ages), localization (country, language, currency), and advanced filters: price range, property types, amenities, minimum rating, brands, hotel class, free cancellation, special offers, eco-certified, vacation rentals only, bedrooms, bathrooms, and sort order (lowest price, highest rating, most reviewed). Returns per-property name, description, link, GPS coordinates, check-in/out times, rate per night and total rate, price comparisons across sources, hotel class, overall rating, reviews, location rating, images, amenities, nearby places, deals, eco-certification, and pagination tokens. Use for travel research agents, hotel rate monitoring, OTA dashboards, and competitive analysis of accommodations across markets.

hasdata_google_travel_hotels_getGoogleHotels input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q",
    "checkInDate",
    "checkOutDate"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "The search query for Google Hotels (e.g., a city, neighborhood, or hotel name).\n"
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "adults": {
      "type": "number",
      "description": "Number of adult guests (1-6).\n"
    },
    "brands": {
      "type": "string",
      "description": "Comma-separated list of brand IDs to filter by. Brand IDs are returned in the response under `brands` for the same query.\n"
    },
    "rating": {
      "enum": [
        "threePointFivePlus",
        "fourPlus",
        "fourPointFivePlus"
      ],
      "type": "string",
      "description": "Filter by minimum overall guest rating. Options:\n\n  - `threePointFivePlus` — 3.5 stars or higher\n  - `fourPlus` — 4.0 stars or higher\n  - `fourPointFivePlus` — 4.5 stars or higher\n"
    },
    "sortBy": {
      "enum": [
        "lowestPrice",
        "highestRating",
        "mostReviewed"
      ],
      "type": "string",
      "description": "Sort hotel results. Options:\n\n  - `lowestPrice` — lowest price\n  - `highestRating` — highest rating\n  - `mostReviewed` — most reviewed\n"
    },
    "bedrooms": {
      "type": "number",
      "description": "Minimum number of bedrooms (vacation rentals only).\n"
    },
    "children": {
      "type": "number",
      "description": "Number of child guests (1-5). Total guests (adults + children) cannot exceed 6.\n"
    },
    "currency": {
      "type": "string",
      "description": "Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`."
    },
    "maxPrice": {
      "type": "number",
      "description": "Maximum price per night, in the selected currency.\n"
    },
    "minPrice": {
      "type": "number",
      "description": "Minimum price per night, in the selected currency.\n"
    },
    "amenity__": {
      "type": "array",
      "items": {
        "enum": [
          "hotelFreeParking",
          "hotelParking",
          "hotelIndoorPool",
          "hotelOutdoorPool",
          "hotelPool",
          "hotelFitnessCenter",
          "hotelRestaurant",
          "hotelFreeBreakfast",
          "hotelSpa",
          "hotelBeachAccess",
          "hotelChildFriendly",
          "hotelBar",
          "hotelPetFriendly",
          "hotelRoomService",
          "hotelFreeWifi",
          "hotelAirConditioned",
          "hotelAllInclusive",
          "hotelWheelchairAccessible",
          "hotelEvCharger",
          "rentalHotTub",
          "rentalAirConditioned",
          "rentalOutdoorGrill",
          "rentalFireplace",
          "rentalPatioOrDeck",
          "rentalKitchen",
          "rentalFitnessCenter",
          "rentalCrib",
          "rentalBeachAccess",
          "rentalKidFriendly",
          "rentalPetFriendly",
          "rentalFreeWifi",
          "rentalPool"
        ],
        "type": "string"
      },
      "description": "List of amenities to filter by (e.g., `hotelFreeWifi,hotelPool`).\n\nValues prefixed `hotel*` apply when searching hotels (the default mode). Values prefixed `rental*` apply when `vacationRentals=true`.\n\nThe two sets are disjoint because Google Hotels exposes different amenity catalogs for each mode — pass values matching the mode you're querying.\n"
    },
    "bathrooms": {
      "type": "number",
      "description": "Minimum number of bathrooms (vacation rentals only).\n"
    },
    "hotelClass": {
      "type": "string",
      "description": "Comma-separated list of hotel star classes to include (e.g., `2,3,4,5`).\n"
    },
    "checkInDate": {
      "type": "string",
      "description": "The check-in date in 'yyyy-MM-dd' format.\n"
    },
    "checkOutDate": {
      "type": "string",
      "description": "The check-out date in 'yyyy-MM-dd' format.\n"
    },
    "childrenAges": {
      "type": "string",
      "description": "Comma-separated list of children ages (e.g., `5,8,12`). Must match the number of children.\n"
    },
    "ecoCertified": {
      "type": "boolean",
      "description": "Show only eco-certified properties.\n"
    },
    "nextPageToken": {
      "type": "string",
      "description": "Token to fetch the next page of hotel results. Returned in the `pagination` field of a previous response.\n"
    },
    "propertyToken": {
      "type": "string",
      "description": "Token used to retrieve details for a specific property. Returned in each property in the results.\n"
    },
    "specialOffers": {
      "type": "boolean",
      "description": "Show only properties with special offers.\n"
    },
    "propertyType__": {
      "type": "array",
      "items": {
        "enum": [
          "hotelBeach",
          "hotelBoutique",
          "hotelHostel",
          "hotelInn",
          "hotelMotel",
          "hotelResort",
          "hotelSpa",
          "hotelBedAndBreakfast",
          "hotelOther",
          "hotelAparthotel",
          "hotelMinshuku",
          "hotelJapaneseBusiness",
          "hotelRyokan",
          "rentalApartment",
          "rentalBungalow",
          "rentalCabin",
          "rentalChalet",
          "rentalCottage",
          "rentalGite",
          "rentalHolidayVillage",
          "rentalHouse",
          "rentalHouseboat",
          "rentalVilla",
          "rentalOther",
          "rentalAparthotel"
        ],
        "type": "string"
      },
      "description": "List of property types to filter by (e.g., `hotelResort,hotelMotel`).\n\nValues prefixed `hotel*` apply when searching hotels (the default mode). Values prefixed `rental*` apply when `vacationRentals=true`.\n\nThe two sets are disjoint because Google Hotels exposes different property-type catalogs for each mode — pass values matching the mode you're querying.\n"
    },
    "vacationRentals": {
      "type": "boolean",
      "description": "Search vacation rentals instead of hotels.\n"
    },
    "freeCancellation": {
      "type": "boolean",
      "description": "Show only properties offering free cancellation.\n"
    }
  },
  "additionalProperties": false
}
hasdata_google_travel_hotels_getGoogleHotels annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_google_trends_search_getTrendsData — google_trends_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Google Trends Data Pulls Google Trends data for one or more queries with geo targeting, region granularity (country/subregion/metro/city), date range, category, time zone, Google property (web, images, news, shopping, YouTube), and dataType (timeseries, geoMap, relatedTopics, relatedQueries). Returns interest-over-time series, geo-level breakdowns, and rising/top related topics/queries with relative scores. Use for keyword/content strategy, demand forecasting, seasonality analysis, topic discovery, campaign timing, and adding live-trend signals to marketing or research agents.

hasdata_google_trends_search_getTrendsData input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Specify the search term for which you want to retrieve trends data."
    },
    "tz": {
      "type": "number",
      "description": "Defines a time zone offset in minutes. The default value is 420 (Pacific Daylight Time (PDT): UTC-7). The valid range for this parameter is from -1439 to 1439.\n\nTo calculate the `tz` value for a specific time zone, you can use the time difference between UTC +0 and the desired time zone.\n\nExamples:\n- `420`: Pacific Daylight Time (PDT)\n- `60`: Central European Time (CET)\n- `-540`: Japan Standard Time\n"
    },
    "cat": {
      "type": "string",
      "description": "Category of the search term. The default value is 0 (\"All categories\"). Provide one exact documented value (1133 allowed), e.g. `0`, `3`."
    },
    "geo": {
      "type": "string",
      "description": "Specifies the location for the search. Defaults to Worldwide if not set or empty. Provide one exact documented value (3517 allowed), e.g. `AF`, `AF-BDS`."
    },
    "date": {
      "type": "string",
      "description": "Defines a date range for the search. Available options:\n\n- `now 1-H`: Past hour\n- `now 4-H`: Past 4 hours\n- `now 1-d`: Past day\n- `now 7-d`: Past 7 days\n- `today 1-m`: Past 30 days\n- `today 3-m`: Past 90 days\n- `today 12-m`: Past 12 months\n- `today 5-y`: Past 5 years\n- `all`: 2004 - present\n\nYou can also specify a custom date range using one of the following formats:\n\n- `yyyy-mm-dd yyyy-mm-dd` - (e.g. 2021-10-15 2022-05-25) for dates from 2004 to present.\n- `yyyy-mm-ddThh yyyy-mm-ddThh` - (e.g. 2022-05-19T10 2022-05-24T22) for dates with hours within a week range. The hours will be calculated based on the tz (time zone) parameter.\n"
    },
    "gprop": {
      "enum": [
        "images",
        "news",
        "froogle",
        "youtube"
      ],
      "type": "string",
      "description": "Sorts results by a specific property. The default property is Web Search (applied when the gprop parameter is not set or empty).\n\nAvailable options:\n  - `images`: Image Search\n  - `news`: News Search\n  - `froogle`: Google Shopping\n  - `youtube`: YouTube Search\n"
    },
    "region": {
      "enum": [
        "country",
        "region",
        "dma",
        "city"
      ],
      "type": "string",
      "description": "Used to get more specific results when using \"Interest by region\" data type. Other data types do not accept this parameter. The default value depends on the geo location that is set.\n\nAvailable options:\n - `country`: Country\n - `region`: Subregion\n - `dma`: Metro\n - `city`: City\n\nNote: Not all region options will return results for every geo location.\n"
    },
    "dataType": {
      "enum": [
        "timeseries",
        "geoMap",
        "relatedTopics",
        "relatedQueries"
      ],
      "type": "string",
      "description": "Defines the type of search to perform.\n\nAvailable options:\n  - `timeseries`: Interest over time (default). Accepts both single and multiple queries per search.\n  - `geoMap`: Interest by region. Accepts both single and multiple queries per search.\n  - `relatedTopics`: Related topics. Accepts only single query per search.\n  - `relatedQueries`: Related queries. Accepts only single query per search.\n"
    }
  },
  "additionalProperties": false
}
hasdata_google_trends_search_getTrendsData annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_indeed_job_getJobDetails — indeed_job: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Indeed Job Details Fetches a single Indeed job posting by its viewjob URL. Returns job title, company, location, salary/compensation, employment type, full description, and benefits. Use for ATS/CRM enrichment, compensation benchmarking, resume-to-JD matching with LLMs, and structured archival of postings discovered via the Indeed Listing endpoint.

hasdata_indeed_job_getJobDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the job vacancy to retrieve details for."
    }
  },
  "additionalProperties": false
}
hasdata_indeed_job_getJobDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_indeed_listing_getJobListings — indeed_listing: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Indeed Job Listings Searches Indeed job listings by keyword and location with sort (relevance/date), country domain targeting, date-posted (1/3/7/14 days) and remote/hybrid filters. For pagination, pass the pagination.nextPage returned by the previous page back as the nextPage parameter. Indeed reranks a query differently on each request, so continuing by nextPage keeps the same ranking and returns a page that does not repeat or skip jobs, whereas the offset-based start parameter can return duplicates or miss jobs across pages. Returns an array of jobs with title, company, location, salary, posted date, job URL, sponsored flag, and jobKey (Indeed's stable job id, the only reliable dedup key for sponsored postings) for the requested page. With sponsoredOnly the request exits from the domain's country, where Indeed serves Canadian searches as sponsored postings. Use for job-market dashboards, role/geo hiring-trend analysis, sourcing pipelines, and generating URL lists to feed into the Indeed Job endpoint.

hasdata_indeed_listing_getJobListings input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "location"
  ],
  "properties": {
    "sort": {
      "enum": [
        "relevance",
        "date"
      ],
      "type": "string",
      "description": "The sorting option for the search results."
    },
    "start": {
      "type": "number",
      "description": "The starting index of the results to retrieve from a single page. For ranked data spanning multiple pages, we recommend using only `nextPage`."
    },
    "domain": {
      "type": "string",
      "description": "The domain of the Indeed site (optional). Provide one exact documented value (62 allowed), e.g. `ar.indeed.com`, `au.indeed.com`."
    },
    "keyword": {
      "type": "string",
      "description": "The keyword used to search for job listings."
    },
    "location": {
      "type": "string",
      "description": "The location to search for job listings."
    },
    "nextPage": {
      "type": "string",
      "description": "The recommended way to paginate. To fetch the next page, pass the `pagination.nextPage` value from the previous response to preserve the ranking order of the search results. When `nextPage` is passed, the `start` parameter is ignored."
    },
    "datePosted": {
      "enum": [
        1,
        3,
        7,
        14
      ],
      "type": "number",
      "description": "Returns only jobs posted within the given number of days."
    },
    "remoteType": {
      "enum": [
        "remote",
        "hybrid"
      ],
      "type": "string",
      "description": "Returns only remote (`remote`) or hybrid (`hybrid`) jobs. In the US, Indeed ties fully remote jobs to the country rather than a city, so use a country-wide location such as `United States`: with a city, Indeed returns few or no remote jobs."
    },
    "sponsoredOnly": {
      "type": "boolean",
      "description": "When enabled, the request is made in a way that returns more sponsored listings. Defaults to false."
    }
  },
  "additionalProperties": false
}
hasdata_indeed_listing_getJobListings annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_instagram_comments_getInstagramComments — instagram_comments: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Instagram Comments Fetches the comments on a public Instagram post or reel from its URL (`/p/`, `/reel/` or `/tv/` links, with or without the username segment). The first page returns the post (id, shortcode, caption, hashtags, mentions, likes and comments counts, owner, hasdataReelsLink to the reels endpoint for the owner, display image, images, video URL, DASH manifest, hasAudio flag, tagged location, and every carousel item as childPosts) plus the first comments; with includeMusic=true the post also carries music (audioId, artistName, songName) for the reel's licensed track or original sound; later pages return comments only. Each comment has text, timestamp, like count, reply count, and owner (username, verified flag, profile picture, hasdataLink to the profile endpoint). Supports token-based pagination via nextPageToken. Instagram sizes pages server-side (about 10 to 15 comments). Use for sentiment analysis, engagement research, or building comment datasets from posts discovered via the posts API, whose items carry a hasdataLink to this endpoint.

hasdata_instagram_comments_getInstagramComments input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the Instagram post or reel, for example `https://www.instagram.com/p/Ddjis3vETcP/` or `https://www.instagram.com/instagram/reel/DcymgItMFao/`."
    },
    "includeMusic": {
      "type": "boolean",
      "description": "Also return the reel's sound (audio ID, artist and song title) in `post.music`, for both licensed tracks and original audio. This takes an extra request to Instagram on the first page and is ignored when `nextPageToken` is set. Default is false."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page."
    }
  },
  "additionalProperties": false
}
hasdata_instagram_comments_getInstagramComments annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_instagram_posts_getInstagramPosts — instagram_posts: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Instagram Posts Fetches the latest posts of a public Instagram account by username (handle) and returns each post with caption, hashtags, mentions, like and comment counts, image and video URLs, and timestamp; play counts are not included. Supports token-based pagination via nextPageToken to walk older posts. Private accounts and handles that do not exist or are hidden from logged-out viewers return an error field instead of posts. Use to monitor competitor content, track engagement of creator posts, or build datasets of account content for vetting and analytics.

hasdata_instagram_posts_getInstagramPosts input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "handle"
  ],
  "properties": {
    "limit": {
      "type": "number",
      "description": "The maximum number of posts to retrieve per request, up to 12. Defaults to 12."
    },
    "handle": {
      "type": "string",
      "description": "The Instagram username of the account whose posts you want to scrape, without the `@` symbol."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. It is used for retrieving the next page results. Use the `nextPageToken` value returned by the previous response."
    }
  },
  "additionalProperties": false
}
hasdata_instagram_posts_getInstagramPosts annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_instagram_profile_getInstagramProfile — instagram_profile: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Instagram Profile Fetches a public Instagram profile by username (handle) and returns full name, biography, external link, profile picture URL, followers count, following count, and verified/private flags. Public profiles also carry hasdataReelsLink to the reels endpoint for the same handle (private accounts get none). Use to enrich CRM/lead records, verify influencer reach before outreach, monitor competitor accounts, or build datasets of creator metadata for vetting and analytics.

hasdata_instagram_profile_getInstagramProfile input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "handle"
  ],
  "properties": {
    "handle": {
      "type": "string",
      "description": "The Instagram username of the profile you want to scrape, without the `@` symbol."
    }
  },
  "additionalProperties": false
}
hasdata_instagram_profile_getInstagramProfile annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_instagram_reels_getInstagramReels — instagram_reels: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Instagram Reels Fetches the Reels of a public Instagram account by username (handle), in Reels tab order (newest first, collab reels included), and returns each reel with play, like and comment counts, caption, hashtags, mentions, cover image, video URL, owner, tagged users, and timestamp. Each reel carries a hasdataLink to the comments endpoint. Supports token-based pagination via nextPageToken to walk older reels. Private accounts and handles that do not exist or are hidden from logged-out viewers return an error field instead of reels. Use to track reel performance (plays) of creators and competitors, or to build datasets of short-form video content; use the posts API for photos and carousels.

hasdata_instagram_reels_getInstagramReels input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "handle"
  ],
  "properties": {
    "limit": {
      "type": "number",
      "description": "The maximum number of reels to retrieve per request, up to 12. Defaults to 12."
    },
    "handle": {
      "type": "string",
      "description": "The Instagram username of the account whose reels you want to scrape, without the `@` symbol."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. It is used for retrieving the next page results. Use the `nextPageToken` value returned by the previous response."
    }
  },
  "additionalProperties": false
}
hasdata_instagram_reels_getInstagramReels annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_perplexity_chat_getPerplexityAnswer — perplexity_chat: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Perplexity Answer Sends a question to Perplexity anonymously and returns the `answer` as markdown text, plus every web page Perplexity searched in `sources` with its `domain`, `title`, `snippet`, `publishedDate` and `citation` number, the follow-up questions in `relatedQuestions`, a link to the thread on perplexity.ai in `url`, the `model` that answered and the `country` the answer was served from. Perplexity searches the web for every question, so `usedWebSearch` is normally true and answers come with `sources` rather than from the model alone. The language of the answer follows the question — write it in the language you want back, or ask for one in it. Set the frame of reference for words like "today" with `timezone`. Each request is a fresh thread with no memory of earlier ones. Use to answer questions with cited sources, to ground an agent or RAG pipeline in live web results, to summarise a topic with the pages behind it, or to build datasets of answers and their citations.

hasdata_perplexity_chat_getPerplexityAnswer input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "prompt"
  ],
  "properties": {
    "prompt": {
      "type": "string",
      "description": "The question to send to Perplexity, up to 4000 characters. The question also decides the language of the answer — write it in the language you want back, or ask for one explicitly (\"Antworte auf Deutsch\")."
    },
    "timezone": {
      "type": "string",
      "description": "IANA time zone name, for example `America/Chicago` or `Europe/Berlin`. It sets what Perplexity treats as the current date and time, which matters for questions that say \"today\", \"this week\" or \"latest\"."
    }
  },
  "additionalProperties": false
}
hasdata_perplexity_chat_getPerplexityAnswer annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_redfin_listing_getRealEstateListings — redfin_listing: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Redfin Real Estate Listings Searches Redfin for-sale, for-rent, or sold listings with pagination. The location accepts a zipcode, city, neighborhood, school, school district, apartment-building name, or a full street address. Returns each listing with address, Redfin URL, list price, beds/baths, square footage, year built, days on market, status, coordinates, photos, and MLS number; an address or building returns a single property card instead. Use for real-estate market research, lead generation for agents, price/DOM trend analysis, and feeding URLs into the Redfin Property endpoint for deep-dive details.

hasdata_redfin_listing_getRealEstateListings input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "type"
  ],
  "properties": {
    "page": {
      "type": "number",
      "description": "The page number of the results to retrieve."
    },
    "sort": {
      "enum": [
        "recommended",
        "newest",
        "oldest",
        "priceLowToHigh",
        "priceHighToLow",
        "minSquareFeet",
        "maxSquareFeet",
        "bedrooms",
        "bathrooms",
        "lotSize",
        "squareFeetPrice",
        "mostRecentlySold"
      ],
      "type": "string",
      "description": "The sorting option for the search results."
    },
    "type": {
      "enum": [
        "forSale",
        "forRent",
        "sold"
      ],
      "type": "string",
      "description": "The type of listing."
    },
    "baths": {
      "enum": [
        "one",
        "oneAndHalf",
        "two",
        "twoAndHalf",
        "three",
        "four"
      ],
      "type": "string",
      "description": "The minimum number of bathrooms."
    },
    "pets__": {
      "type": "array",
      "items": {
        "enum": [
          "dogsAllowed",
          "catsAllowed"
        ],
        "type": "string"
      },
      "description": "An array of pet types allowed."
    },
    "keyword": {
      "type": "string",
      "description": "The location to search for listings. Accepts a zipcode (`33321`), a city (`Austin` or `Austin, TX`), a neighborhood (`East Austin`), a school (`BASIS Austin`), a school district (`Austin Independent School District`), an apartment building by its name (`Maizon Brickell`), or a full street address (`5805 Woodview Ave, Austin, TX 78756`), including a single unit (`221 SW 12th St Unit 1716, Miami, FL`). An address or a building returns a single property card instead of a list of listings, and the `type` parameter does not apply to it."
    },
    "beds_max_": {
      "type": "number",
      "description": "The maximum number of bedrooms."
    },
    "beds_min_": {
      "type": "number",
      "description": "The minimum number of bedrooms."
    },
    "cost_hoa_": {
      "type": "number",
      "description": "The maximum monthly Homeowners Association (HOA) fee."
    },
    "moveInDate": {
      "type": "string",
      "description": "The desired move-in date in MM/DD/YYYY format."
    },
    "price_max_": {
      "type": "number",
      "description": "The maximum price of the listing."
    },
    "price_min_": {
      "type": "number",
      "description": "The minimum price of the listing."
    },
    "homeTypes__": {
      "type": "array",
      "items": {
        "enum": [
          "house",
          "townhouse",
          "townhome",
          "condo",
          "land",
          "multiFamily",
          "mobile",
          "coOp",
          "other",
          "apartment"
        ],
        "type": "string"
      },
      "description": "An array of home types to filter the listings. Allowed values depend on the listing `type`."
    },
    "lotSize_max_": {
      "enum": [
        "2000 sqft",
        "4500 sqft",
        "6500 sqft",
        "8000 sqft",
        "9500 sqft",
        "0.25 acres",
        "0.5 acres",
        "1 acres",
        "2 acres",
        "3 acres",
        "4 acres",
        "5 acres",
        "10 acres",
        "20 acres",
        "40 acres",
        "100 acres"
      ],
      "type": "string",
      "description": "The maximum lot size."
    },
    "lotSize_min_": {
      "enum": [
        "2000 sqft",
        "4500 sqft",
        "6500 sqft",
        "8000 sqft",
        "9500 sqft",
        "0.25 acres",
        "0.5 acres",
        "1 acres",
        "2 acres",
        "3 acres",
        "4 acres",
        "5 acres",
        "10 acres",
        "20 acres",
        "40 acres",
        "100 acres"
      ],
      "type": "string",
      "description": "The minimum lot size."
    },
    "stories_max_": {
      "enum": [
        "1",
        "2",
        "3",
        "4",
        "5",
        "10",
        "15",
        "20"
      ],
      "type": "string",
      "description": "The maximum number of stories."
    },
    "stories_min_": {
      "enum": [
        "1",
        "2",
        "3",
        "4",
        "5",
        "10",
        "15",
        "20"
      ],
      "type": "string",
      "description": "The minimum number of stories."
    },
    "timeOnRedfin": {
      "enum": [
        "newListing",
        "lessThan3Days",
        "lessThan7Days",
        "lessThan14Days",
        "lessThan30Days",
        "moreThan7Days",
        "moreThan14Days",
        "moreThan30Days",
        "moreThan45Days",
        "moreThan60Days",
        "moreThan90Days",
        "moreThan180Days"
      ],
      "type": "string",
      "description": "How long the listing has been on Redfin."
    },
    "yearBuilt_max_": {
      "enum": [
        "2026",
        "2025",
        "2024",
        "2023",
        "2022",
        "2021",
        "2020",
        "2019",
        "2018",
        "2017",
        "2016",
        "2015",
        "2010",
        "2005",
        "2000",
        "1990",
        "1980",
        "1970",
        "1960",
        "1950",
        "1940",
        "1920",
        "1900"
      ],
      "type": "string",
      "description": "The maximum year the property was built."
    },
    "yearBuilt_min_": {
      "enum": [
        "2026",
        "2025",
        "2024",
        "2023",
        "2022",
        "2021",
        "2020",
        "2019",
        "2018",
        "2017",
        "2016",
        "2015",
        "2010",
        "2005",
        "2000",
        "1990",
        "1980",
        "1970",
        "1960",
        "1950",
        "1940",
        "1920",
        "1900"
      ],
      "type": "string",
      "description": "The minimum year the property was built."
    },
    "statusOptions__": {
      "type": "array",
      "items": {
        "enum": [
          "active",
          "comingSoon",
          "contingentPending"
        ],
        "type": "string"
      },
      "description": "An array of listing statuses."
    },
    "soldWithinOption": {
      "enum": [
        "lastOneWeek",
        "lastOneMonth",
        "lastThreeMonth",
        "lastSixMonth",
        "lastYear",
        "lastTwoYear",
        "lastThreeYear",
        "lastFiveYear"
      ],
      "type": "string",
      "description": "Filter sold listings by how recently they were sold."
    },
    "rentalAmenities__": {
      "type": "array",
      "items": {
        "enum": [
          "airConditioning",
          "dishwasher",
          "inUnitWasherDryer",
          "parkingAllowed",
          "utilitiesIncluded",
          "attFiber",
          "furnished",
          "laundryFacility",
          "pool",
          "washerDryerHookup"
        ],
        "type": "string"
      },
      "description": "An array of rental amenities to filter the listings."
    },
    "cost_priceReduced_": {
      "enum": [
        "inTheLastDay",
        "inTheLast3Days",
        "inTheLast7Days",
        "inTheLast14Days",
        "inTheLast30Days",
        "moreThan30Days",
        "moreThan60Days",
        "moreThan120Days"
      ],
      "type": "string",
      "description": "Filter listings by when the price was reduced."
    },
    "rentalOtherTerms__": {
      "type": "array",
      "items": {
        "enum": [
          "incomeRestricted",
          "student",
          "shortTerm",
          "seniorLiving",
          "military"
        ],
        "type": "string"
      },
      "description": "An array of additional rental terms."
    },
    "monthlyPayment_max_": {
      "type": "number",
      "description": "The maximum monthly payment."
    },
    "monthlyPayment_min_": {
      "type": "number",
      "description": "The minimum monthly payment."
    },
    "schools_schoolType___": {
      "type": "array",
      "items": {
        "enum": [
          "elementary",
          "middle",
          "high"
        ],
        "type": "string"
      },
      "description": "An array of school types."
    },
    "forSaleSquareFeet_max_": {
      "enum": [
        "750",
        "1000",
        "1100",
        "1200",
        "1300",
        "1400",
        "1500",
        "1600",
        "1700",
        "1800",
        "1900",
        "2000",
        "2250",
        "2500",
        "2750",
        "3000",
        "4000",
        "5000",
        "7500",
        "10000"
      ],
      "type": "string",
      "description": "The maximum square footage for for-sale listings."
    },
    "forSaleSquareFeet_min_": {
      "enum": [
        "750",
        "1000",
        "1100",
        "1200",
        "1300",
        "1400",
        "1500",
        "1600",
        "1700",
        "1800",
        "1900",
        "2000",
        "2250",
        "2500",
        "2750",
        "3000",
        "4000",
        "5000",
        "7500",
        "10000"
      ],
      "type": "string",
      "description": "The minimum square footage for for-sale listings."
    },
    "homeFeatures_basement_": {
      "enum": [
        "finished",
        "unfinished"
      ],
      "type": "string",
      "description": "The basement type."
    },
    "homeFeatures_poolType_": {
      "enum": [
        "privatePool",
        "communityPool",
        "privateOrCommunityPool",
        "noPrivatePool"
      ],
      "type": "string",
      "description": "The type of pool."
    },
    "cost_acceptedFinancing_": {
      "enum": [
        "FHA",
        "VA"
      ],
      "type": "string",
      "description": "The accepted financing type."
    },
    "cost_excludeLandLeases_": {
      "type": "boolean",
      "description": "If set to true, listings with land leases will be excluded."
    },
    "cost_pricePerSqft__max_": {
      "enum": [
        "50",
        "100",
        "150",
        "200",
        "250",
        "300",
        "400",
        "500",
        "600",
        "800",
        "1000",
        "1400",
        "1800",
        "2200",
        "2600",
        "3000"
      ],
      "type": "string",
      "description": "The maximum price per square foot."
    },
    "cost_pricePerSqft__min_": {
      "enum": [
        "50",
        "100",
        "150",
        "200",
        "250",
        "300",
        "400",
        "500",
        "600",
        "800",
        "1000",
        "1400",
        "1800",
        "2200",
        "2600",
        "3000"
      ],
      "type": "string",
      "description": "The minimum price per square foot."
    },
    "homeFeatures_options___": {
      "type": "array",
      "items": {
        "enum": [
          "airConditioning",
          "waterfront",
          "hasAView",
          "fireplace",
          "fixerUpper",
          "guestHouse",
          "elevator",
          "washerDryerHookup",
          "petsAllowed",
          "primaryBedroomOnMainFloor",
          "rvparking",
          "greenHome",
          "accessibleHome",
          "includeOutdoorParking"
        ],
        "type": "string"
      },
      "description": "An array of home feature flags to filter the listings."
    },
    "listingType_category___": {
      "type": "array",
      "items": {
        "enum": [
          "byAgent",
          "byOwnerFsbo",
          "newConstruction",
          "foreclosures"
        ],
        "type": "string"
      },
      "description": "An array of listing categories."
    },
    "onlyWithDealOrPromotion": {
      "type": "boolean",
      "description": "If set to true, only listings with a deal or promotion will be included."
    },
    "exclude55PlusCommunities": {
      "type": "boolean",
      "description": "If set to true, 55+ communities will be excluded."
    },
    "forRentSquareFootage_max_": {
      "type": "number",
      "description": "The maximum square footage for for-rent listings."
    },
    "forRentSquareFootage_min_": {
      "type": "number",
      "description": "The minimum square footage for for-rent listings."
    },
    "schools_greatSchoolRating_": {
      "type": "number",
      "description": "The minimum GreatSchools rating (1-10)."
    },
    "transportScores_bikeScore_": {
      "type": "number",
      "description": "The minimum bike score (1-100)."
    },
    "transportScores_walkScore_": {
      "type": "number",
      "description": "The minimum walk score (1-100)."
    },
    "cost_maxPropertyTaxPerYear_": {
      "type": "number",
      "description": "The maximum property tax per year."
    },
    "homeFeatures_keywordSearch_": {
      "type": "string",
      "description": "A free-text keyword search applied to listing descriptions."
    },
    "openHouseAndTour_openHouse_": {
      "enum": [
        "thisWeekend",
        "anytime"
      ],
      "type": "string",
      "description": "Filter listings with an open house."
    },
    "openHouseAndTour_videoTour_": {
      "type": "boolean",
      "description": "If set to true, only listings with a video tour will be included."
    },
    "homeFeatures_garageSpotsMin_": {
      "enum": [
        "1",
        "2",
        "3",
        "4",
        "5"
      ],
      "type": "string",
      "description": "The minimum number of garage spots."
    },
    "monthlyPayment_interestRate_": {
      "type": "number",
      "description": "The mortgage interest rate (percent) used to calculate the monthly payment."
    },
    "monthlyPayment_mortgageTerm_": {
      "enum": [
        "fixed15Years",
        "fixed20Years",
        "fixed30Years",
        "fixed30YearsFha",
        "fixed30YearsVa",
        "fixed30YearsJumbo"
      ],
      "type": "string",
      "description": "The mortgage term used to calculate the monthly payment."
    },
    "monthlyPayment_insuranceRate_": {
      "type": "number",
      "description": "The home insurance rate (percent) used to calculate the monthly payment."
    },
    "transportScores_transitScore_": {
      "type": "number",
      "description": "The minimum transit score (1-100)."
    },
    "listingType_excludeShortSales_": {
      "type": "boolean",
      "description": "If set to true, short sales will be excluded."
    },
    "schools_includeUnratedSchools_": {
      "type": "boolean",
      "description": "If set to true, unrated schools will be included."
    },
    "listingType_redfinListingsOnly_": {
      "type": "boolean",
      "description": "If set to true, only Redfin-listed properties will be included."
    },
    "monthlyPayment_downPaymentAmount_": {
      "type": "number",
      "description": "The down payment as an absolute amount."
    },
    "monthlyPayment_downPaymentPercent_": {
      "type": "number",
      "description": "The down payment as a percentage of the home price."
    }
  },
  "additionalProperties": false
}
hasdata_redfin_listing_getRealEstateListings annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_redfin_property_getPropertyDetails — redfin_property: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Redfin Property Details Fetches the full Redfin property page by URL. Returns address, list/sold price, price history, Redfin Estimate, beds/baths, square footage, lot size, year built, property type, HOA, days on market, school ratings, tax history, listing agent, full description, photos, and nearby comparables. Use for CMA reports, investor due-diligence, valuation models, listing enrichment, and powering buyer-assistant agents with verified property facts.

hasdata_redfin_property_getPropertyDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the property on Redfin. Must be a valid Redfin property URL."
    }
  },
  "additionalProperties": false
}
hasdata_redfin_property_getPropertyDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_shopify_collections_getCollections — shopify_collections: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Shopify Store Collections Lists collections from any public Shopify storefront URL with limit (up to 250) and page pagination. Returns each collection's id, title, handle, description, image, and timestamps. Use the returned handles as input to the Shopify Products endpoint to enumerate category-specific catalogs, or to map a competitor's merchandising taxonomy and track collection changes over time.

hasdata_shopify_collections_getCollections input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the Shopify store. For example, 'https://b2bdemoexperience.myshopify.com'."
    },
    "page": {
      "type": "number",
      "description": "The page number of the results to retrieve. Must be a positive integer."
    },
    "limit": {
      "type": "number",
      "description": "The maximum number of collections to retrieve. Must be between 1 and 250."
    }
  },
  "additionalProperties": false
}
hasdata_shopify_collections_getCollections annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_shopify_products_getProducts — shopify_products: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Shopify Store Products Pulls products from any public Shopify storefront URL, optionally filtered by a collection handle, with limit (up to 250) and page pagination. Returns product id, title, handle, vendor, product_type, tags, body_html, images, variants with prices/SKUs/inventory status, and timestamps. Use for competitive price monitoring, catalog mirroring, availability tracking, building product datasets for comparison shopping, or feeding structured SKU data into downstream analytics and dropshipping pipelines.

hasdata_shopify_products_getProducts input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the Shopify store. For example, 'https://b2bdemoexperience.myshopify.com'."
    },
    "page": {
      "type": "number",
      "description": "The page number of the results to retrieve. Must be a positive integer."
    },
    "limit": {
      "type": "number",
      "description": "The maximum number of products to retrieve. Must be between 1 and 250."
    },
    "collection": {
      "type": "string",
      "description": "The handle of the collection to filter the products. Provide the collection handle as a string."
    }
  },
  "additionalProperties": false
}
hasdata_shopify_products_getProducts annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tiktok_comments_getTikTokComments — tiktok_comments: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get TikTok Comments Fetches the comments on a public TikTok video by its numeric video id, or the replies to a specific comment when commentId is given. Each comment returns text, like count, timestamp, reply count, and author (username, nickname, avatar, plus hasdataLink to the profile endpoint and hasdataPostsLink to the posts endpoint). The first page of top-level comments also returns `post` with the video's description, author, music, cover and video URLs, duration, hashtags, and its like, comment, share, play, and save counts. Supports token-based pagination via nextPageToken. Use for sentiment analysis, engagement research, or building comment datasets from a video discovered via the posts or search APIs.

hasdata_tiktok_comments_getTikTokComments input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "videoId"
  ],
  "properties": {
    "videoId": {
      "type": "string",
      "description": "The numeric id of the video (the number after `/video/` in a TikTok URL)."
    },
    "commentId": {
      "type": "string",
      "description": "When provided, returns the replies to this comment instead of the video's top-level comments."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page."
    }
  },
  "additionalProperties": false
}
hasdata_tiktok_comments_getTikTokComments annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tiktok_posts_getTikTokPosts — tiktok_posts: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get TikTok Posts Fetches a page of videos for a public TikTok account by username (handle) and returns each video with description, hashtags, mentions, like/comment/share/play/collect counts, cover and playable video URLs, music, duration, and timestamp. Returns a page of ~30 videos plus a `nextPageToken`; pass that token back to walk the account history one page at a time. Use to monitor competitor content, track engagement of creator videos, or build datasets of account content for vetting and analytics.

hasdata_tiktok_posts_getTikTokPosts input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "handle"
  ],
  "properties": {
    "handle": {
      "type": "string",
      "description": "The TikTok username of the account whose videos you want to scrape, with or without the `@` symbol."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. It is used for retrieving the next page of results. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page."
    }
  },
  "additionalProperties": false
}
hasdata_tiktok_posts_getTikTokPosts annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tiktok_profile_getTikTokProfile — tiktok_profile: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get TikTok Profile Fetches a public TikTok profile by username (handle) and returns nickname, biography, bio link, avatar URLs, verified/private flags, account creation time, and followers, follows, likes, videos, and friends counts. Use to enrich CRM/lead records, verify influencer reach before outreach, monitor competitor accounts, or build datasets of creator metadata for vetting and analytics.

hasdata_tiktok_profile_getTikTokProfile input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "handle"
  ],
  "properties": {
    "handle": {
      "type": "string",
      "description": "The TikTok username of the profile you want to scrape, with or without the `@` symbol."
    }
  },
  "additionalProperties": false
}
hasdata_tiktok_profile_getTikTokProfile annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tiktok_search_getTikTokSearch — tiktok_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Search TikTok Searches TikTok by keyword and returns either videos (with description, hashtags, mentions, like/comment/share/play counts, cover and playable video URLs, music, and author) or users (nickname, bio, avatar, verified flag, follower count). Each author and each user carries a hasdataLink to their profile endpoint and a hasdataPostsLink to their posts endpoint. Supports token-based pagination via nextPageToken. Use for content discovery, trend research, influencer discovery, or building datasets from a keyword.

hasdata_tiktok_search_getTikTokSearch input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword"
  ],
  "properties": {
    "type": {
      "enum": [
        "video",
        "user"
      ],
      "type": "string",
      "description": "What to search for — videos or users. Defaults to video."
    },
    "keyword": {
      "type": "string",
      "description": "The phrase to search for on TikTok."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Defines the next page token. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page."
    }
  },
  "additionalProperties": false
}
hasdata_tiktok_search_getTikTokSearch annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tripadvisor_place_getTripadvisorPlace — tripadvisor_place: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Tripadvisor Place Details Fetches one Tripadvisor place by its numeric place ID (the `placeId` returned by the Tripadvisor Search API, or the number after `-d` or `-g` in a Tripadvisor URL) and returns `placeResult`, whose fields depend on its `type`. Every place carries name, link, description, rating, review count, ranking, photos, address, phone, website, email and GPS coordinates where Tripadvisor shows them. Hotels add star class, award, styles, subratings, prices by booking provider with the quoted dates, price range, amenities, room features and types, languages spoken, room count, walk score, an AI review summary with highlights, and nearby transit, airports, hotels, restaurants and attractions. Attractions add categories, duration, ticket price, opening hours, neighborhood, how to get there, featured tours, and nearby places; tours (attraction products) add highlights, languages, meeting point, inclusions, exclusions and the operator. Destinations add travel advice (tips and questions), suggested hotels, restaurants and attractions, itineraries, articles, guides, themed collections, related destinations and an FAQ. Use it to enrich search results, build travel and hospitality datasets, or monitor hotel prices and ratings.

hasdata_tripadvisor_place_getTripadvisorPlace input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "placeId"
  ],
  "properties": {
    "domain": {
      "enum": [
        "www.tripadvisor.com",
        "ar.tripadvisor.com",
        "www.tripadvisor.com.ar",
        "www.tripadvisor.com.au",
        "www.tripadvisor.at",
        "www.tripadvisor.be",
        "fr.tripadvisor.be",
        "www.tripadvisor.com.br",
        "www.tripadvisor.ca",
        "fr.tripadvisor.ca",
        "www.tripadvisor.cl",
        "cn.tripadvisor.com",
        "www.tripadvisor.co",
        "www.tripadvisor.com.pe",
        "www.tripadvisor.dk",
        "www.tripadvisor.com.eg",
        "www.tripadvisor.fr",
        "www.tripadvisor.de",
        "www.tripadvisor.com.gr",
        "www.tripadvisor.com.hk",
        "en.tripadvisor.com.hk",
        "www.tripadvisor.in",
        "www.tripadvisor.co.id",
        "www.tripadvisor.ie",
        "www.tripadvisor.co.il",
        "www.tripadvisor.it",
        "www.tripadvisor.jp",
        "www.tripadvisor.co.kr",
        "www.tripadvisor.com.my",
        "www.tripadvisor.com.mx",
        "www.tripadvisor.nl",
        "www.tripadvisor.co.nz",
        "no.tripadvisor.com",
        "www.tripadvisor.com.ph",
        "www.tripadvisor.pt",
        "www.tripadvisor.ru",
        "www.tripadvisor.com.sg",
        "www.tripadvisor.co.za",
        "www.tripadvisor.es",
        "www.tripadvisor.se",
        "fr.tripadvisor.ch",
        "www.tripadvisor.ch",
        "it.tripadvisor.ch",
        "www.tripadvisor.com.tw",
        "th.tripadvisor.com",
        "www.tripadvisor.com.tr",
        "www.tripadvisor.co.uk",
        "www.tripadvisor.com.ve",
        "www.tripadvisor.com.vn"
      ],
      "type": "string",
      "description": "Tripadvisor domain to use. The domain sets the language of the results. Default is `www.tripadvisor.com`."
    },
    "placeId": {
      "type": "string",
      "description": "Tripadvisor place ID, as returned by the Tripadvisor Search API. Works for destinations, hotels, attractions, tours and restaurants."
    }
  },
  "additionalProperties": false
}
hasdata_tripadvisor_place_getTripadvisorPlace annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tripadvisor_reviews_getTripadvisorReviews — tripadvisor_reviews: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Tripadvisor Reviews Fetches reviews of one Tripadvisor place by its numeric place ID (the `placeId` returned by the Tripadvisor Search API, or the number after `-d` in a Tripadvisor URL), up to 20 per request with offset pagination. Filter by star rating (`rating[]`), month of the visit (`month[]`), type of visit (`typeOfVisit[]`: business, couples, family, friends, solo) and review language (`language`); sort by most recent or most detailed. A language filter also returns reviews machine-translated into that language: each review reports its `language` and `originalLanguage`. Returns `searchInformation.totalReviews` for the filters, `pagination` with the next offset and a `hasdataLink` to the next page (absent on the last page), and per review the title, text, rating, sub-ratings, link, date, trip date and type, tips, photos, helpful votes, the author (username, display name, profile link, avatar, contribution count, hometown) and the owner response. Use it for sentiment analysis, competitor and reputation monitoring, or hospitality datasets.

hasdata_tripadvisor_reviews_getTripadvisorReviews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "placeId"
  ],
  "properties": {
    "limit": {
      "type": "number",
      "description": "Number of reviews to return."
    },
    "domain": {
      "enum": [
        "www.tripadvisor.com",
        "ar.tripadvisor.com",
        "www.tripadvisor.com.ar",
        "www.tripadvisor.com.au",
        "www.tripadvisor.at",
        "www.tripadvisor.be",
        "fr.tripadvisor.be",
        "www.tripadvisor.com.br",
        "www.tripadvisor.ca",
        "fr.tripadvisor.ca",
        "www.tripadvisor.cl",
        "cn.tripadvisor.com",
        "www.tripadvisor.co",
        "www.tripadvisor.com.pe",
        "www.tripadvisor.dk",
        "www.tripadvisor.com.eg",
        "www.tripadvisor.fr",
        "www.tripadvisor.de",
        "www.tripadvisor.com.gr",
        "www.tripadvisor.com.hk",
        "en.tripadvisor.com.hk",
        "www.tripadvisor.in",
        "www.tripadvisor.co.id",
        "www.tripadvisor.ie",
        "www.tripadvisor.co.il",
        "www.tripadvisor.it",
        "www.tripadvisor.jp",
        "www.tripadvisor.co.kr",
        "www.tripadvisor.com.my",
        "www.tripadvisor.com.mx",
        "www.tripadvisor.nl",
        "www.tripadvisor.co.nz",
        "no.tripadvisor.com",
        "www.tripadvisor.com.ph",
        "www.tripadvisor.pt",
        "www.tripadvisor.ru",
        "www.tripadvisor.com.sg",
        "www.tripadvisor.co.za",
        "www.tripadvisor.es",
        "www.tripadvisor.se",
        "fr.tripadvisor.ch",
        "www.tripadvisor.ch",
        "it.tripadvisor.ch",
        "www.tripadvisor.com.tw",
        "th.tripadvisor.com",
        "www.tripadvisor.com.tr",
        "www.tripadvisor.co.uk",
        "www.tripadvisor.com.ve",
        "www.tripadvisor.com.vn"
      ],
      "type": "string",
      "description": "Tripadvisor domain to use. The domain sets the language of the results. Default is `www.tripadvisor.com`."
    },
    "offset": {
      "type": "number",
      "description": "Number of reviews to skip. Use `pagination.nextOffset` from the previous response, or call `pagination.hasdataLink`, which repeats every filter with the next offset."
    },
    "sortBy": {
      "enum": [
        "mostRecent",
        "detailed"
      ],
      "type": "string",
      "description": "Review order."
    },
    "month__": {
      "type": "array",
      "items": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          12
        ],
        "type": "number"
      },
      "description": "Only reviews of visits in these months (1 = January). Multiple values are combined with OR."
    },
    "placeId": {
      "type": "string",
      "description": "Tripadvisor place ID, as returned by the Tripadvisor Search API."
    },
    "language": {
      "type": "string",
      "description": "Review language code, e.g. `en` or `fr`. Includes reviews machine-translated into it; compare `language` and `originalLanguage` on each review. All languages when omitted."
    },
    "rating__": {
      "type": "array",
      "items": {
        "enum": [
          1,
          2,
          3,
          4,
          5
        ],
        "type": "number"
      },
      "description": "Only reviews with these ratings. Multiple values are combined with OR."
    },
    "typeOfVisit__": {
      "type": "array",
      "items": {
        "enum": [
          "business",
          "couples",
          "family",
          "friends",
          "solo"
        ],
        "type": "string"
      },
      "description": "Only reviews of these trip types. Multiple values are combined with OR."
    }
  },
  "additionalProperties": false
}
hasdata_tripadvisor_reviews_getTripadvisorReviews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_tripadvisor_search_getTripadvisorSearchResults — tripadvisor_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Tripadvisor Search Results Runs a Tripadvisor search for a free-text query (a destination, a property name, or a listing-style phrase like "luxury hotels in new york city") with optional search origin coordinates, result type filter, Tripadvisor domain and offset-based pagination. Returns `places` (destinations, hotels, restaurants, attractions and tours with place ID, type, link, description, rating, review count, location, thumbnail and the review snippet that matched the query), `forums` for the forums type, `locations` for Tripadvisor list pages the query resolves to, and `pagination` with the next offset. Each place carries a `hasdataLink` that calls the Tripadvisor Place API for its full details; use it to enrich results, or to build travel and hospitality datasets for a destination.

hasdata_tripadvisor_search_getTripadvisorSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "The search query, e.g. a destination, a property name or a phrase like `luxury hotels in new york city`."
    },
    "lat": {
      "type": "number",
      "description": "Latitude of the search origin. Requires `lon`. Results near this point are ranked higher."
    },
    "lon": {
      "type": "number",
      "description": "Longitude of the search origin. Requires `lat`."
    },
    "type": {
      "enum": [
        "all",
        "hotels",
        "restaurants",
        "thingsToDo",
        "destinations",
        "forums"
      ],
      "type": "string",
      "description": "Limits results to one type. `all` mixes destinations, hotels, restaurants and things to do; `forums` returns forum topics instead of places."
    },
    "limit": {
      "type": "number",
      "description": "Number of results to return."
    },
    "domain": {
      "enum": [
        "www.tripadvisor.com",
        "ar.tripadvisor.com",
        "www.tripadvisor.com.ar",
        "www.tripadvisor.com.au",
        "www.tripadvisor.at",
        "www.tripadvisor.be",
        "fr.tripadvisor.be",
        "www.tripadvisor.com.br",
        "www.tripadvisor.ca",
        "fr.tripadvisor.ca",
        "www.tripadvisor.cl",
        "cn.tripadvisor.com",
        "www.tripadvisor.co",
        "www.tripadvisor.com.pe",
        "www.tripadvisor.dk",
        "www.tripadvisor.com.eg",
        "www.tripadvisor.fr",
        "www.tripadvisor.de",
        "www.tripadvisor.com.gr",
        "www.tripadvisor.com.hk",
        "en.tripadvisor.com.hk",
        "www.tripadvisor.in",
        "www.tripadvisor.co.id",
        "www.tripadvisor.ie",
        "www.tripadvisor.co.il",
        "www.tripadvisor.it",
        "www.tripadvisor.jp",
        "www.tripadvisor.co.kr",
        "www.tripadvisor.com.my",
        "www.tripadvisor.com.mx",
        "www.tripadvisor.nl",
        "www.tripadvisor.co.nz",
        "no.tripadvisor.com",
        "www.tripadvisor.com.ph",
        "www.tripadvisor.pt",
        "www.tripadvisor.ru",
        "www.tripadvisor.com.sg",
        "www.tripadvisor.co.za",
        "www.tripadvisor.es",
        "www.tripadvisor.se",
        "fr.tripadvisor.ch",
        "www.tripadvisor.ch",
        "it.tripadvisor.ch",
        "www.tripadvisor.com.tw",
        "th.tripadvisor.com",
        "www.tripadvisor.com.tr",
        "www.tripadvisor.co.uk",
        "www.tripadvisor.com.ve",
        "www.tripadvisor.com.vn"
      ],
      "type": "string",
      "description": "Tripadvisor domain to use. The domain sets the language of the results. Default is `www.tripadvisor.com`."
    },
    "offset": {
      "type": "number",
      "description": "Number of results to skip, e.g. `30` for the second page with the default limit. Use `pagination.nextOffset` from the previous response. Tripadvisor serves results up to offset 1000."
    }
  },
  "additionalProperties": false
}
hasdata_tripadvisor_search_getTripadvisorSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_walmart_product_getWalmartProduct — walmart_product: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Walmart Product Details Scrapes one Walmart product page on a chosen storefront by item id or URL. Returns title, brand, model, UPC, condition, availability, price with strikethrough before-price and unit price, the seller holding the buy box with its rating and return policy, badges, SNAP EBT eligibility, Walmart+ savings, star rating with the per-star review breakdown and AI review summaries, images, category path, highlights, specifications, AI-generated key item features, variant axes with every option and the itemId each combination resolves to, fulfillment details, and the other-sellers block: when otherOffers is enabled, the full offer list with each seller name, storefront URL, price, condition, shipping cost, delivery date and return policy plus its count; when disabled, only the competitor count and cheapest competing price the page itself advertises, which is often absent (notably on walmart.ca). Use for price and buy-box monitoring, seller and marketplace competitor tracking, assortment enrichment of item ids harvested from search, and variant mapping.

hasdata_walmart_product_getWalmartProduct input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "url": {
      "type": "string",
      "description": "A full Walmart product URL to scrape as is. When provided, it overrides `itemId` and the storefront is taken from the URL itself. Required unless `itemId` is provided."
    },
    "domain": {
      "enum": [
        "walmart.com",
        "walmart.ca"
      ],
      "type": "string",
      "description": "Walmart storefront the item belongs to. Each storefront has its own catalog, item ids, prices and currency, so an id from one storefront does not resolve on another. Ignored when `url` is provided. Default is `walmart.com`."
    },
    "itemId": {
      "type": "string",
      "description": "Walmart item id, taken from a product URL or from the id field of the Walmart Search API response. On `walmart.com` it is numeric (for example `14977205582`), on `walmart.ca` an alphanumeric code (for example `6NZMJ5CW6MH2`). Required unless `url` is provided."
    },
    "language": {
      "enum": [
        "en",
        "es",
        "fr"
      ],
      "type": "string",
      "description": "Language of the product details. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default."
    },
    "otherOffers": {
      "type": "boolean",
      "description": "Also collect the offers of other sellers competing for this item - each seller name, storefront, price, condition, shipping cost, delivery date and return policy. This takes an extra request to Walmart and costs 5 credits on top of the base 10, whether or not the item turns out to have competing sellers. Enable it to get the seller list - it is the only reliable way to know whether other sellers exist, because the product page's own advertised competitor count is often absent (notably on `walmart.ca`) even when sellers are available. With the switch off, the `otherOffers` block is returned only when the page itself advertises a count, and then carries just that count and the cheapest competing price without the seller list. Default is `false`."
    }
  },
  "additionalProperties": false
}
hasdata_walmart_product_getWalmartProduct annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_walmart_reviews_getWalmartReviews — walmart_reviews: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Walmart Product Reviews Scrapes the customer reviews of one Walmart product on a chosen storefront by item id or URL, ten reviews a page. Returns each review with its rating, title, full text with paragraphs preserved, submission date, author, verified-purchase flag, helpful and not-helpful vote counts, badges, marketplace seller, photos and videos, and the review aspects it was tagged with. Alongside the reviews it returns the item rating, how many ratings versus how many written reviews exist, the per-star breakdown, the AI review summary, per-aspect scores such as Quality or Value for money, and a filters block listing exactly which star ratings, frequent mentions and conditions this item can be filtered by, with a count for each - the values in that block are the ones to pass back as request parameters. Sort by most relevant, most recent, most helpful, highest rated, lowest rated or oldest, and filter by star rating, frequent mention, condition or verified purchases only. Use for review mining and sentiment analysis, tracking what buyers praise or complain about per product, monitoring new reviews over time, and pulling only verified-purchase feedback.

hasdata_walmart_reviews_getWalmartReviews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "url": {
      "type": "string",
      "description": "A full Walmart product URL whose reviews to scrape. When provided, it overrides `itemId` and the storefront is taken from the URL itself. Required unless `itemId` is provided."
    },
    "page": {
      "type": "number",
      "description": "Page of reviews to return, ten reviews a page. The response reports the last available page in `pagination.totalPages`, the next one in `pagination.nextPage`, and how many reviews the current filters select in `pagination.totalResults`. Note that only reviews carrying written text are paginated, so the ceiling follows `reviewsInformation.totalReviews` rather than the larger `reviewsInformation.totalRatings`. Default is `1`."
    },
    "sort": {
      "enum": [
        "mostRelevant",
        "mostRecent",
        "mostHelpful",
        "highestRated",
        "lowestRated",
        "oldest"
      ],
      "type": "string",
      "description": "Order of the returned reviews, named as the Walmart review page names it. Default is `mostRelevant`."
    },
    "domain": {
      "enum": [
        "walmart.com",
        "walmart.ca"
      ],
      "type": "string",
      "description": "Walmart storefront the item belongs to. Each storefront has its own catalog, item ids and review pool, so an id from one storefront does not resolve on another. Ignored when `url` is provided. Default is `walmart.com`."
    },
    "itemId": {
      "type": "string",
      "description": "Walmart item id, taken from a product URL or from the id field of the Walmart Search API response. On `walmart.com` it is numeric (for example `14977205582`), on `walmart.ca` an alphanumeric code (for example `6NZMJ5CW6MH2`). Required unless `url` is provided."
    },
    "rating": {
      "type": "number",
      "description": "Return only reviews carrying this star rating, from `1` to `5`. The Star rating group of the `filters` block lists the ratings this item actually has, each with the `value` to send here and a `count` of how many reviews to expect."
    },
    "aspectId": {
      "type": "string",
      "description": "Return only reviews mentioning one topic. Send the `value` of the topic you want, taken from the Frequent mentions group of the `filters` block in the response - given `{\"name\": \"Battery Life\", \"value\": \"6049\", \"count\": 8}` you send `6049`, and `count` is how many reviews to expect. **Only one topic per request**, Walmart rejects a list of them. Topics belong to the product rather than to Walmart: a phone offers Battery Life or Display, a coffee offers Flavor or Aroma, and some items offer none at all - so make an unfiltered request first and read the block, instead of reusing a topic id across products."
    },
    "language": {
      "enum": [
        "en",
        "es",
        "fr"
      ],
      "type": "string",
      "description": "Language of the review page. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default. Reviews themselves are returned in the language their author wrote them in."
    },
    "condition": {
      "type": "string",
      "description": "Return only reviews written about one condition of the item. Send the `value` from the Condition group of the `filters` block - given `{\"name\": \"Restored: Like New\", \"value\": \"5\"}` you send `5`. **Only one condition per request.** This group appears for items Walmart sells in several conditions, and only when the request already names one: reach the variant through the `url` parameter with its `conditionGroupCode`, as in `https://www.walmart.com/ip/1028936148?conditionGroupCode=2`, and the block then lists the condition that variant carries. An item sold in a single condition has no such group, and no reviews to separate by it."
    },
    "verifiedPurchasesOnly": {
      "type": "boolean",
      "description": "Return only reviews left by customers whose purchase Walmart confirmed. Narrows the pool considerably, since most reviews are unverified or syndicated from the manufacturer."
    }
  },
  "additionalProperties": false
}
hasdata_walmart_reviews_getWalmartReviews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_walmart_search_getSearchResults — walmart_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Walmart Search Results Runs a keyword or category search on a chosen Walmart storefront with pagination, price range and fulfillment filters, facet narrowing, and sort order (best match, price low-to-high, price high-to-low, bestseller, highly rated, new arrivals). Returns the product list with item id, title, product URL, brand, price and strikethrough before-price, star rating, review count, seller, availability, sponsored flag, badges, SNAP EBT eligibility, Walmart+ savings, variants, other offers and fulfillment details (shipping, pickup, delivery messages), plus the facets block listing every filter the query supports with the exact value to send back in the facet parameter, pagination, and the store the prices belong to. Use for SERP monitoring, price and assortment tracking, share-of-shelf analysis, competitor discovery, and harvesting item ids to feed downstream product or reviews endpoints.

hasdata_walmart_search_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "q": {
      "type": "string",
      "description": "The search term for which to get the search results. It can be omitted only when `catId` is provided, to browse a whole category instead of searching."
    },
    "url": {
      "type": "string",
      "description": "A full Walmart search or category URL to scrape as is. When provided, it overrides `q`, `catId` and the other search parameters, and the storefront is taken from the URL itself."
    },
    "page": {
      "type": "number",
      "description": "Page number for pagination (e.g., `1` for the first page, `2` for the second page, etc.). Walmart stops serving results after roughly page 10, returning an empty page beyond that."
    },
    "sort": {
      "enum": [
        "bestMatch",
        "priceLowToHigh",
        "priceHighToLow",
        "bestseller",
        "highlyRated",
        "newArrivals"
      ],
      "type": "string",
      "description": "The sorting option for the search results."
    },
    "catId": {
      "type": "string",
      "description": "Walmart category id, taken from a category URL (for example `976759_1086446_1229651`). Combine it with `q` to search inside a category, or send it alone to browse the whole category. Required unless `q` is provided."
    },
    "facet": {
      "type": "string",
      "description": "Walmart filter in the `name:value` form, for example `brand:Great Value`. Every value available for a query is listed in the facets block of the response, each one carrying the exact string to send back here, so a first unfiltered request tells you what can be filtered on. To combine filters, put each one on its own line. The double-pipe form Walmart's own urls use `brand:Great Value||retailer_type:Walmart` is also accepted."
    },
    "domain": {
      "enum": [
        "walmart.com",
        "walmart.ca"
      ],
      "type": "string",
      "description": "Walmart storefront to search. Each storefront has its own catalog, prices and currency. Default is `walmart.com`."
    },
    "language": {
      "enum": [
        "en",
        "es",
        "fr"
      ],
      "type": "string",
      "description": "Language of the results. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default."
    },
    "maxPrice": {
      "type": "number",
      "description": "Upper bound of the price range, in the storefront currency."
    },
    "minPrice": {
      "type": "number",
      "description": "Lower bound of the price range, in the storefront currency."
    },
    "deliveryType": {
      "enum": [
        "shipping",
        "pickup"
      ],
      "type": "string",
      "description": "Keep only the products available with the selected fulfillment method. Default is `shipping`. Note that `pickup` is answered against one Walmart store, so an item in stock nationally can still be unavailable for `pickup` nearby - the response then reports that nothing matched the filters rather than that the query had no results."
    }
  },
  "additionalProperties": false
}
hasdata_walmart_search_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_web_scraping_web_scraping_scrapeWebPage — web_scraping_web_scraping: POST /
Advertised by the server during the last successful anonymous check.
Advertised destructiveOpen-world

Scrape Web Page Universal web scraper that fetches any public URL through managed proxies (datacenter or residential, geo-targeted) with optional JS rendering, custom headers, wait conditions, jsScenario actions (click, scroll, fill, waitFor), screenshots, resource/ad/URL blocking (these require JS rendering), and extractRules/aiExtractRules for LLM-driven structured extraction. Returns HTML, text, markdown, and/or JSON along with status code, extracted emails and links, CSS-selector extractions, and AI-structured fields per schema. Use as a fallback/universal fetcher for sites without a dedicated API, for scraping JS-heavy SPAs, capturing screenshots, or producing clean markdown/structured JSON to feed downstream parsers, RAG pipelines, or data warehouses.

hasdata_web_scraping_web_scraping_scrapeWebPage input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the web page to scrape."
    },
    "wait": {
      "type": "number",
      "description": "Time in milliseconds to wait after the page load."
    },
    "headers": {
      "type": "object",
      "description": "Optional custom headers to send with the request.",
      "additionalProperties": {}
    },
    "waitFor": {
      "type": "string",
      "description": "CSS selector to wait for before scraping."
    },
    "autoMode": {
      "type": "boolean",
      "description": "Use the cheapest proxy type and JS rendering that load the page, overriding `jsRendering` and `proxyType`. The chosen values are returned in `requestMetadata` and billed."
    },
    "blockAds": {
      "type": "boolean",
      "description": "Whether to block ads."
    },
    "blockUrls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of URLs to block."
    },
    "proxyType": {
      "enum": [
        "datacenter",
        "residential"
      ],
      "type": "string",
      "description": "Type of proxy to use."
    },
    "jsScenario": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      },
      "description": "Enables custom JavaScript interactions on the target webpage during scraping. It's an array where each object defines a specific action or step. These actions can include clicking elements, waiting for elements, executing custom scripts, and more. Key actions within this field include:\n\n- `evaluate`: Run custom JavaScript code on the page.\n- `click`: Click on an element specified by a CSS selector.\n- `wait`: Pause for a set duration (in milliseconds).\n- `waitFor`: Delay until a specific element appears.\n- `waitForAndClick`: Combine waiting for an element and then clicking it.\n- `scrollX`, `scrollY`: Scroll to specified positions on the page.\n- `fill`: Enter values into input fields identified by CSS selectors.\n\nActions are executed sequentially.\n"
    },
    "screenshot": {
      "type": "boolean",
      "description": "Whether to take a screenshot of the page."
    },
    "excludeTags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The `excludeTags` parameter accepts an array of valid CSS selectors.\nElements matching these selectors will be removed from the final output.\nEach value must be a valid `querySelectorAll` selector. This can be used to remove ads, scripts, or\nother unwanted sections.\n"
    },
    "jsRendering": {
      "type": "boolean",
      "description": "Enable JavaScript rendering."
    },
    "extractLinks": {
      "type": "boolean",
      "description": "Extract links from the page."
    },
    "extractRules": {
      "type": "object",
      "description": "Rules for extracting specific data from the page. For example: `{ \"title\": \"h1\", \"link_href\": \"a#link @href\", \"page_text\": \"body\" }`\n",
      "additionalProperties": {}
    },
    "outputFormat": {
      "type": "array",
      "items": {
        "enum": [
          "html",
          "text",
          "markdown",
          "json"
        ],
        "type": "string"
      },
      "minItems": 1,
      "description": "The outputFormat parameter specifies the desired response format: `html`, `text`, `markdown`, or `json`. If only one of `html`, `text`, or `markdown` is provided, the API returns the response in that format. If multiple formats are specified, the API returns a JSON response with keys for each requested format. If `json` is included with any other format, the API returns a JSON response with keys for the other specified formats.\n"
    },
    "proxyCountry": {
      "enum": [
        "US",
        "UK",
        "DE",
        "IE",
        "FR",
        "IT",
        "SE",
        "BR",
        "CA",
        "JP",
        "SG",
        "IN",
        "ID"
      ],
      "type": "string",
      "description": "Optional proxy country code."
    },
    "extractEmails": {
      "type": "boolean",
      "description": "Extract emails from the page."
    },
    "aiExtractRules": {
      "type": "object",
      "description": "Defines custom rules for AI-based data extraction using LLMs. This enables the system to extract structured data directly from the HTML of the page. Each key in the object represents a desired output field name, and the value specifies its type and optional description to guide the AI.\n\nSupported types:\n- `string`: plain text value\n- `number`: numeric value\n- `boolean`: true/false\n- `list`: an array of values\n- `item`: a nested object with its own structure defined under `output`\n",
      "additionalProperties": {}
    },
    "blockResources": {
      "type": "boolean",
      "description": "Whether to block loading of resources like images and stylesheets."
    },
    "includeOnlyTags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The `includeOnlyTags` parameter accepts an array of valid CSS selectors.\nWhen specified, only the elements matching these selectors will be included in the response content.\nEach value must be a valid `querySelectorAll` selector. Useful for extracting specific parts of the document.\n"
    },
    "removeBase64Images": {
      "type": "boolean",
      "description": "If set to `true`, any images embedded as base64-encoded strings will be removed from the output.\nUseful for reducing response size or when base64 images are not needed.\n"
    }
  },
  "additionalProperties": false
}
hasdata_web_scraping_web_scraping_scrapeWebPage annotations
{
  "readOnlyHint": false,
  "openWorldHint": true,
  "destructiveHint": true
}
hasdata_yellowpages_place_getPlaceDetails — yellowpages_place: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Yellow Pages Place Details Scrapes a single YellowPages business listing URL and returns business name, street address, city, region, zip code, coordinates, phone, website, hours of operation, payment methods, categories, ratings, review counts, photos, and service descriptions, plus email and years in business on yellowpages.com listings. Fields the listing does not publish, such as a street address, hours, or email, are omitted from the response. Use to hydrate a lead with verified NAP data, build a B2B contact database from YellowPages URLs collected via the Search endpoint, or validate business legitimacy and hours before outreach.

hasdata_yellowpages_place_getPlaceDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The YellowPages URL of the place."
    }
  },
  "additionalProperties": false
}
hasdata_yellowpages_place_getPlaceDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_yellowpages_search_getSearchResults — yellowpages_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get YellowPages Search Results Runs a YellowPages business search by keyword plus location with sort (default, distance, averageRating, name; yellowpages.com only), country domain targeting, and page-based pagination. Returns each business with name, listing URL, phone, address, categories, rating, review count, and years in business. Use for B2B lead generation by niche and city, feeding the resulting URLs into the YellowPages Place endpoint for enrichment, or building geo-targeted prospect lists for sales outreach.

hasdata_yellowpages_search_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "location"
  ],
  "properties": {
    "page": {
      "type": "number",
      "description": "The page number of the results to retrieve."
    },
    "sort": {
      "enum": [
        "default",
        "distance",
        "averageRating",
        "name"
      ],
      "type": "string",
      "description": "The sorting option for the search results."
    },
    "domain": {
      "enum": [
        "www.yellowpages.com",
        "www.yellowpages.ca"
      ],
      "type": "string",
      "description": "YellowPages domain to use. Default is `www.yellowpages.com`."
    },
    "keyword": {
      "type": "string",
      "description": "The search term for which to get the search results."
    },
    "location": {
      "type": "string",
      "description": "The location where to search for businesses with the given keyword."
    }
  },
  "additionalProperties": false
}
hasdata_yellowpages_search_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_yelp_place_getPlaceDetails — yelp_place: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Yelp Place Details Fetches a single Yelp business by Yelp ID or alias with domain targeting. Returns name, address, phone, website, price range, categories, overall rating, review count, hours, amenities, photos, and highlighted reviews. Use to enrich leads or listings with verified Yelp metadata, monitor a competitor's rating and review count over time, or validate hours/amenities before displaying venue details to end users.

hasdata_yelp_place_getPlaceDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "placeId"
  ],
  "properties": {
    "domain": {
      "enum": [
        "www.yelp.com",
        "www.yelp.co.uk",
        "www.yelp.ca",
        "www.yelp.com.au",
        "ms.yelp.my",
        "www.yelp.cz",
        "www.yelp.dk",
        "www.yelp.de",
        "www.yelp.at",
        "de.yelp.ch",
        "en.yelp.be",
        "en.yelp.com.hk",
        "en.yelp.my",
        "www.yelp.co.nz",
        "en.yelp.com.ph",
        "www.yelp.ie",
        "www.yelp.com.sg",
        "en.yelp.ch",
        "www.yelp.com.ar",
        "www.yelp.cl",
        "www.yelp.es",
        "www.yelp.com.mx",
        "fil.yelp.com.ph",
        "fr.yelp.be",
        "www.yelp.fr",
        "fr.yelp.ch",
        "www.yelp.it",
        "it.yelp.ch",
        "nl.yelp.be",
        "www.yelp.nl",
        "www.yelp.no",
        "www.yelp.pl",
        "www.yelp.com.br",
        "www.yelp.pt",
        "fi.yelp.fi",
        "sv.yelp.fi",
        "www.yelp.com.tr",
        "www.yelp.co.jp",
        "zh.yelp.com.hk",
        "www.yelp.com.tw"
      ],
      "type": "string",
      "description": "Yelp domain to use. Default is `www.yelp.com`."
    },
    "placeId": {
      "type": "string",
      "description": "The Yelp ID or Yelp Alias of the place. For example, 'jPIZ3FR5LNcwPuUHi2Fe4g' or 'mcdonalds-new-york-386'."
    }
  },
  "additionalProperties": false
}
hasdata_yelp_place_getPlaceDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_yelp_reviews_getPlaceReviews — yelp_reviews: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Yelp Place Reviews Fetches the review feed of a single Yelp business by Yelp ID, with sorting (relevance, date, rating, elites), filtering by star rating, language and free-text query, and cursor pagination. To page, either step `start` by `num`, or resend the `pagination.nextPageToken` of the previous response as the `nextPageToken` parameter, keeping the other filters unchanged, until `pagination.hasNextPage` is false. The response reports the page it returned as `pagination.start` and `pagination.num`, matching the parameter names. Each review returns the author profile (name, location, review/friend/photo counts, Elite status), full text with language, star rating, timestamp, attached photos and videos, reader reactions, review tags (check-ins, first review, reservation and payment flags) and the owner reply when present. The response also carries the business review totals broken down by rating and by language. Use to monitor customer sentiment over time, mine complaints for a competitor, track how a business responds to negative reviews, or build rating-distribution and review-velocity datasets.

hasdata_yelp_reviews_getPlaceReviews input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "placeId"
  ],
  "properties": {
    "num": {
      "type": "number",
      "description": "Number of reviews to return per page. The maximum is 49. Defaults to 49 for the recommended feed and to 10 when `notRecommended` is set. The response echoes it back as `pagination.num`.\n"
    },
    "query": {
      "type": "string",
      "description": "Note: Yelp ignores the `rating` filter while searching, so a query returns matching reviews of every star rating. Free-text query to search within the reviews of the place.\n"
    },
    "start": {
      "type": "number",
      "description": "Result offset for pagination. It skips the given number of reviews, so the step matches `num` (e.g., 0, 49, 98 for the recommended feed, or 0, 10, 20 when `notRecommended` is set). The response echoes it back as `pagination.start`. Cannot be combined with `nextPageToken`.\n"
    },
    "domain": {
      "enum": [
        "www.yelp.com",
        "www.yelp.co.uk",
        "www.yelp.ca",
        "www.yelp.com.au",
        "ms.yelp.my",
        "www.yelp.cz",
        "www.yelp.dk",
        "www.yelp.de",
        "www.yelp.at",
        "de.yelp.ch",
        "en.yelp.be",
        "en.yelp.com.hk",
        "en.yelp.my",
        "www.yelp.co.nz",
        "en.yelp.com.ph",
        "www.yelp.ie",
        "www.yelp.com.sg",
        "en.yelp.ch",
        "www.yelp.com.ar",
        "www.yelp.cl",
        "www.yelp.es",
        "www.yelp.com.mx",
        "fil.yelp.com.ph",
        "fr.yelp.be",
        "www.yelp.fr",
        "fr.yelp.ch",
        "www.yelp.it",
        "it.yelp.ch",
        "nl.yelp.be",
        "www.yelp.nl",
        "www.yelp.no",
        "www.yelp.pl",
        "www.yelp.com.br",
        "www.yelp.pt",
        "fi.yelp.fi",
        "sv.yelp.fi",
        "www.yelp.com.tr",
        "www.yelp.co.jp",
        "zh.yelp.com.hk",
        "www.yelp.com.tw"
      ],
      "type": "string",
      "description": "Yelp domain to use. Default is `www.yelp.com`."
    },
    "rating": {
      "type": "string",
      "description": "Note: Yelp ignores this filter when `query` is set, so a search returns matching reviews of every star rating. Filters the reviews by star rating. Possible values are 5, 4, 3, 2 and 1. To return only five-star reviews, set it to `5`. To include several ratings, pass them comma-separated, for example `5,4,3`. When omitted, reviews with any rating are returned.\n"
    },
    "sortBy": {
      "enum": [
        "relevanceDesc",
        "dateDesc",
        "dateAsc",
        "ratingDesc",
        "ratingAsc",
        "elitesDesc"
      ],
      "type": "string",
      "description": "The order in which the reviews are returned. Defaults to relevanceDesc."
    },
    "placeId": {
      "type": "string",
      "description": "The Yelp ID of the place. For example, '-4ofMtrD7pSpZIX5pnDkig'. Yelp IDs can be obtained from the Yelp Search Scraper API."
    },
    "languageCode": {
      "type": "string",
      "description": "Language of the reviews to return, as a two-letter code (e.g., 'en', 'es', 'fr'). Defaults to en."
    },
    "nextPageToken": {
      "type": "string",
      "description": "Opaque cursor for the next page, taken verbatim from `pagination.nextPageToken` of the previous response. It carries both the offset and the page size, so passing it alone continues the feed where the last response ended. Keep the other filters (`sortBy`, `rating`, `languageCode`, `query`, `notRecommended`) identical across pages. Use either this or `start`, not both. Paginate until `pagination.hasNextPage` is false.\n"
    },
    "notRecommended": {
      "type": "boolean",
      "description": "Returns the reviews Yelp does not currently recommend (filtered out of the main feed by its recommendation software) instead of the recommended ones. These reviews carry no photos, videos or reactions, and are paginated ten at a time. Defaults to false.\n"
    }
  },
  "additionalProperties": false
}
hasdata_yelp_reviews_getPlaceReviews annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_yelp_search_getSearchResults — yelp_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Yelp Search Results Runs a Yelp business search by keyword and location with optional map-bounded radius via the `l` parameter (g:lon1,lat1,lon2,lat2), domain targeting, and offset-based pagination. Returns a ranked list of businesses with Yelp alias/ID, name, categories, rating, review count, price tier, and thumbnail. Use the returned aliases as input to the Yelp Place endpoint for full details, to power local-discovery UIs, or to build market-share/competitor datasets for a niche in a given geography.

hasdata_yelp_search_getSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "location"
  ],
  "properties": {
    "l": {
      "type": "string",
      "description": "Parameter defines the distance or map radius for the search results. For example: `g:-95.2486,29.8496,-95.4277,29.6324`.\n"
    },
    "start": {
      "type": "number",
      "description": "Result offset for pagination (e.g., 0 for the first page, 10 for the 2nd page, etc.)."
    },
    "domain": {
      "enum": [
        "www.yelp.com",
        "www.yelp.co.uk",
        "www.yelp.ca",
        "www.yelp.com.au",
        "ms.yelp.my",
        "www.yelp.cz",
        "www.yelp.dk",
        "www.yelp.de",
        "www.yelp.at",
        "de.yelp.ch",
        "en.yelp.be",
        "en.yelp.com.hk",
        "en.yelp.my",
        "www.yelp.co.nz",
        "en.yelp.com.ph",
        "www.yelp.ie",
        "www.yelp.com.sg",
        "en.yelp.ch",
        "www.yelp.com.ar",
        "www.yelp.cl",
        "www.yelp.es",
        "www.yelp.com.mx",
        "fil.yelp.com.ph",
        "fr.yelp.be",
        "www.yelp.fr",
        "fr.yelp.ch",
        "www.yelp.it",
        "it.yelp.ch",
        "nl.yelp.be",
        "www.yelp.nl",
        "www.yelp.no",
        "www.yelp.pl",
        "www.yelp.com.br",
        "www.yelp.pt",
        "fi.yelp.fi",
        "sv.yelp.fi",
        "www.yelp.com.tr",
        "www.yelp.co.jp",
        "zh.yelp.com.hk",
        "www.yelp.com.tw"
      ],
      "type": "string",
      "description": "Yelp domain to use. Default is `www.yelp.com`."
    },
    "keyword": {
      "type": "string",
      "description": "The search term for which to get the search results."
    },
    "location": {
      "type": "string",
      "description": "The location where to search for businesses with the given keyword."
    }
  },
  "additionalProperties": false
}
hasdata_yelp_search_getSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_youtube_channel_getYoutubeChannel — youtube_channel: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get YouTube Channel Data Fetches a YouTube channel by its ID (`UC…`) or handle (`@name`) and returns structured data for any channel tab — `featured`/Home, `videos`, `shorts`, `streams`, `playlists`, `posts`, `podcasts`, `releases`, `store` (desktop only), `about`. Returns channel identity (title, description, avatar, banner), subscriber count, country, join date, total-view count and social links (on the `about` tab), and the items on the requested tab (videos with views and publish date, playlists, posts, podcasts, etc.). Use to monitor competitor channels, build creator/brand directories, track posting cadence and growth signals, or feed `videoId` into the YouTube Video / Transcript endpoints.

hasdata_youtube_channel_getYoutubeChannel input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "channelId"
  ],
  "properties": {
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "tab": {
      "enum": [
        "featured",
        "videos",
        "shorts",
        "streams",
        "playlists",
        "posts",
        "community",
        "podcasts",
        "releases",
        "about",
        "store"
      ],
      "type": "string",
      "description": "Channel tab to scrape. Each tab returns a different content shape:\n- `featured` (default) — channel Home page (channel trailer + curated rows)\n- `videos` — uploaded long-form videos\n- `shorts` — Shorts feed\n- `streams` — past and upcoming live streams\n- `playlists` — created and saved playlists\n- `posts` / `community` — community posts\n- `podcasts` — podcast episodes\n- `releases` — music releases\n- `about` — channel description, links, stats\n- `store` — channel merch\n"
    },
    "channelId": {
      "type": "string",
      "description": "YouTube channel identifier — either the canonical channel ID (`UC…`, 24 chars) or the public handle starting with `@` (e.g. `@PewDiePie`). Legacy `/c/<custom>` and `/user/<name>` URL slugs are also accepted."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile"
      ],
      "type": "string",
      "description": "Device type for the request."
    },
    "paginationToken": {
      "type": "string",
      "description": "Token returned in the previous response to fetch the next page of results."
    }
  },
  "additionalProperties": false
}
hasdata_youtube_channel_getYoutubeChannel annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_youtube_search_getYoutubeSearchResults — youtube_search: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get YouTube Search Results Searches YouTube for a query and returns the full results page split into `videoResults` (videoId, title, views, length, publish date, chapters, channel info, extensions like 4K/CC), `channelResults` (channelId, handle, subscribers, verified flag), `shortsResults` / `inlineShortsResults`, themed `shelves` (e.g. 'People also watched', 'Latest from <creator>'), `adsResults` and `sponsoredResults` (advertiser, landing URL, position), plus `searchInformation.totalResults`. Each block preserves its `positionOnPage` so the original layout is reconstructable. Use for competitor and topic monitoring, brand-mention tracking, ad-placement intelligence, creator discovery, trend research, or to feed `videoId` / `channelId` into the YouTube Video, Channel, or Transcript endpoints.

hasdata_youtube_search_getYoutubeSearchResults input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Free-text search query, exactly as a user would type it into the YouTube search box."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "sp": {
      "type": "string",
      "description": "Raw YouTube `sp` filter token, copied verbatim from a YouTube search URL (e.g. `EgIQAQ%253D%253D`). When provided, it overrides `sortBy`, `date`, `videoType`, `length`, and `filters[]`. Use only if you need a YouTube-side filter that this API does not expose as a structured parameter."
    },
    "date": {
      "enum": [
        "hour",
        "today",
        "week",
        "month",
        "year"
      ],
      "type": "string",
      "description": "Limit results to videos uploaded within this time window relative to now."
    },
    "length": {
      "enum": [
        "under4",
        "between420",
        "plus20"
      ],
      "type": "string",
      "description": "Filter by video duration bucket:\n- `under4` — under 4 minutes\n- `between420` — 4 to 20 minutes\n- `plus20` — over 20 minutes\n"
    },
    "sortBy": {
      "enum": [
        "relevance",
        "popularity",
        "rating",
        "date",
        "views"
      ],
      "type": "string",
      "description": "Sort order applied to the results page. `relevance` (default) — best match for the query; `date` — newest first; `views` — most viewed first; `rating` — highest rated first; `popularity` — trending/most popular."
    },
    "filters__": {
      "type": "array",
      "items": {
        "enum": [
          "hd",
          "subtitles",
          "cc",
          "d3",
          "live",
          "bought",
          "k4",
          "d360",
          "location",
          "hdr",
          "vr180"
        ],
        "type": "string"
      },
      "description": "Feature flags to require on results. Multiple values are combined with AND (every flag must apply).\n\n- `hd` — HD quality\n- `k4` — 4K quality\n- `hdr` — HDR\n- `subtitles` — has subtitles/closed captions\n- `cc` — Creative Commons license\n- `d3` — 3D video\n- `d360` — 360° video\n- `vr180` — VR180 video\n- `live` — currently live\n- `bought` — purchased/paid content\n- `location` — has a geographic location tag\n"
    },
    "videoType": {
      "enum": [
        "video",
        "shorts",
        "channel",
        "playlist",
        "movie"
      ],
      "type": "string",
      "description": "Restrict results to a single YouTube content type — regular videos, Shorts, channels, playlists, or movies."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile"
      ],
      "type": "string",
      "description": "Device type for the request."
    },
    "paginationToken": {
      "type": "string",
      "description": "Token returned in the previous response to fetch the next page."
    }
  },
  "additionalProperties": false
}
hasdata_youtube_search_getYoutubeSearchResults annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_youtube_transcript_getYoutubeTranscript — youtube_transcript: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get YouTube Video Transcript Returns the timed transcript (subtitles) of a YouTube video by its 11-character `videoId`. `languageCode` selects the track (e.g. `en`, `de-DE`, `pt-BR`); `type=asr` requests the auto-generated speech-recognition track. Each segment in `transcript[]` carries `startMs`, `endMs`, `snippet`, and a formatted `startTimeText`. The response also includes `availableTranscripts[]` listing every track on the video (language name + code, `type: asr` for auto-generated, `selected: true` for the one returned) so callers can discover what else is available. Use to feed a video's spoken content into RAG/LLM pipelines, generate summaries or chapter outlines, build searchable archives, run translation or accessibility workflows, or analyze talking points across a creator's catalog (pair with the YouTube Channel endpoint to enumerate videos, then fetch transcripts).

hasdata_youtube_transcript_getYoutubeTranscript input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "v"
  ],
  "properties": {
    "v": {
      "type": "string",
      "description": "11-character YouTube video ID — the value of the `v=` query parameter in a watch URL (e.g. `dQw4w9WgXcQ` for `https://www.youtube.com/watch?v=dQw4w9WgXcQ`)."
    },
    "type": {
      "enum": [
        "asr"
      ],
      "type": "string",
      "description": "Set to `asr` to fetch the YouTube auto-generated (speech-recognition) track. Omit to fetch the human-authored track for `languageCode` when one exists."
    },
    "languageCode": {
      "type": "string",
      "description": "BCP-47 / YouTube language code of the transcript track to return (e.g. `en`, `de`, `en-US`, `pt-BR`). Must match a track that the video actually has. When omitted, the video's default language track is returned."
    }
  },
  "additionalProperties": false
}
hasdata_youtube_transcript_getYoutubeTranscript annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_youtube_video_getYoutubeVideo — youtube_video: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get YouTube Video Data Fetches a single YouTube video by its 11-character `videoId`. Returns title, thumbnail, raw + normalized views and likes, `lengthSeconds`, publish date, category, keywords/tags, `isFamilySafe` / `isUnlisted` flags, the uploading channel (id, link, subscribers, avatar), the full description with parsed links and hashtags, available `captions` tracks (with `kind: asr` for auto-generated), Content-ID `music` matches (song/artist/album), creator `socialLinks`, and the `relatedVideos`, `endScreenVideos`, and `relatedShorts` rails. Use to enrich a video URL with metadata, monitor view/like growth, extract music or sponsor/affiliate links, gather features for recommender or RAG pipelines, or detect caption tracks before calling the YouTube Transcript endpoint.

hasdata_youtube_video_getYoutubeVideo input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "v"
  ],
  "properties": {
    "v": {
      "type": "string",
      "description": "11-character YouTube video ID — the value of the `v=` query parameter in a watch URL (e.g. `dQw4w9WgXcQ` for `https://www.youtube.com/watch?v=dQw4w9WgXcQ`)."
    },
    "gl": {
      "type": "string",
      "description": "The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."
    },
    "hl": {
      "type": "string",
      "description": "The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."
    },
    "deviceType": {
      "enum": [
        "desktop",
        "mobile"
      ],
      "type": "string",
      "description": "Device type for the request."
    }
  },
  "additionalProperties": false
}
hasdata_youtube_video_getYoutubeVideo annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_zillow_listing_getRealEstateListings — zillow_listing: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Zillow Real Estate Listings Searches Zillow for-sale, for-rent, and sold listings by keyword with rich filters (price, beds, baths, home type, year built, lot/square footage, HOA, listing status, amenities, views, pet policy, days on Zillow) and pagination. Returns each listing with address, Zillow URL/zpid, price, Zestimate, beds/baths, sqft, home type, status, days on Zillow, coordinates, thumbnail, and listing broker. Use for real-estate market dashboards, rental pricing analysis, agent lead lists, inventory tracking, and collecting URLs for the Zillow Property endpoint.

hasdata_zillow_listing_getRealEstateListings input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "keyword",
    "type"
  ],
  "properties": {
    "hoa": {
      "type": "number",
      "description": "The Homeowners Association (HOA) fee."
    },
    "page": {
      "type": "number",
      "description": "The page number of the results to retrieve."
    },
    "sort": {
      "enum": [
        "verifiedSource",
        "homesForYou",
        "priceHighToLow",
        "priceLowToHigh",
        "paymentHighToLow",
        "paymentLowToHigh",
        "newest",
        "bedrooms",
        "bathrooms",
        "squareFeet",
        "lotSize"
      ],
      "type": "string",
      "description": "The sorting option for the search results."
    },
    "type": {
      "enum": [
        "forSale",
        "forRent",
        "sold"
      ],
      "type": "string",
      "description": "The type of listing."
    },
    "pets__": {
      "type": "array",
      "items": {
        "enum": [
          "allowsLargeDogs",
          "allowsSmallDogs",
          "allowsCats"
        ],
        "type": "string"
      },
      "description": "An array of pet options."
    },
    "keyword": {
      "type": "string",
      "description": "The keyword used to search for listings."
    },
    "tours__": {
      "type": "array",
      "items": {
        "enum": [
          "open",
          "3d"
        ],
        "type": "string"
      },
      "description": "An array of tour options."
    },
    "views__": {
      "type": "array",
      "items": {
        "enum": [
          "city",
          "mountain",
          "park",
          "water"
        ],
        "type": "string"
      },
      "description": "An array of views."
    },
    "keywords": {
      "type": "string",
      "description": "Additional keywords to refine the search."
    },
    "beds_max_": {
      "type": "number",
      "description": "The maximum number of bedrooms."
    },
    "beds_min_": {
      "type": "number",
      "description": "The minimum number of bedrooms."
    },
    "basement__": {
      "type": "array",
      "items": {
        "enum": [
          "finished",
          "unfinished"
        ],
        "type": "string"
      },
      "description": "An array of basement options."
    },
    "baths_max_": {
      "type": "number",
      "description": "The maximum number of bathrooms."
    },
    "baths_min_": {
      "type": "number",
      "description": "The minimum number of bathrooms."
    },
    "moveInDate": {
      "type": "string",
      "description": "The desired move-in date in `YYYY-MM-DD` format."
    },
    "price_max_": {
      "type": "number",
      "description": "The maximum price of the listing."
    },
    "price_min_": {
      "type": "number",
      "description": "The minimum price of the listing."
    },
    "homeTypes__": {
      "type": "array",
      "items": {
        "enum": [
          "house",
          "townhome",
          "multiFamily",
          "condo",
          "lot",
          "apartment",
          "manufactured"
        ],
        "type": "string"
      },
      "description": "An array of home types to filter the listings."
    },
    "daysOnZillow": {
      "enum": [
        1,
        7,
        14,
        30,
        90,
        "6m",
        "12m",
        "24m",
        "36m"
      ],
      "type": [
        "number",
        "string"
      ],
      "description": "The number of days a listing has been on Zillow."
    },
    "lotSize_max_": {
      "type": "number",
      "description": "The maximum lot size."
    },
    "lotSize_min_": {
      "type": "number",
      "description": "The minimum lot size."
    },
    "mustHaveGarage": {
      "type": "boolean",
      "description": "If set to true, only listings with a garage will be included."
    },
    "yearBuilt_max_": {
      "type": "number",
      "description": "The maximum year the property was built."
    },
    "yearBuilt_min_": {
      "type": "number",
      "description": "The minimum year the property was built."
    },
    "parkingSpotsMin": {
      "type": "number",
      "description": "The minimum number of parking spots."
    },
    "singleStoryOnly": {
      "type": "boolean",
      "description": "If set to true, only single-story properties will be included."
    },
    "squareFeet_max_": {
      "type": "number",
      "description": "The maximum square footage."
    },
    "squareFeet_min_": {
      "type": "number",
      "description": "The minimum square footage."
    },
    "otherAmenities__": {
      "type": "array",
      "items": {
        "enum": [
          "ac",
          "pool",
          "waterfront",
          "onsiteParking",
          "inUnitLaundry",
          "acceptZillowApplications",
          "incomeRestricted",
          "apartmentCommunity"
        ],
        "type": "string"
      },
      "description": "An array of other amenities."
    },
    "propertyStatus__": {
      "type": "array",
      "items": {
        "enum": [
          "comingSoon",
          "acceptingBackupOffers",
          "pendingAndUnderContract"
        ],
        "type": "string"
      },
      "description": "An array of property statuses."
    },
    "hide55plusCommunities": {
      "type": "boolean",
      "description": "If set to true, 55+ communities will be excluded."
    },
    "listingPublishOptions__": {
      "type": "array",
      "items": {
        "enum": [
          "ownerPosted",
          "agentListed",
          "newConstruction",
          "foreclosures",
          "auctions",
          "foreclosed",
          "preForeclosures"
        ],
        "type": "string"
      },
      "description": "An array of listing publish options. Use `ownerPosted` for listings by owner and `agentListed` for listings by agent."
    }
  },
  "additionalProperties": false
}
hasdata_zillow_listing_getRealEstateListings annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
hasdata_zillow_property_getPropertyDetails — zillow_property: GET /
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get Zillow Property Details Fetches the full Zillow property page by URL/zpid, with optional agent email extraction. Returns address, list price, Zestimate and Rent Zestimate, price and tax history, beds/baths, living area, lot size, year built, home type, HOA, days on Zillow, listing description, features/amenities, photos, school assignments, walk/transit scores (building pages only), and listing agent/broker (plus email when enabled). Use for valuation models, CMA generation, investor underwriting, rental yield analysis, and enriching buyer/seller agent assistants with authoritative property data.

hasdata_zillow_property_getPropertyDetails input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "The URL of the property on Zillow. Must be a valid Zillow property URL."
    },
    "extractAgentEmails": {
      "type": "boolean",
      "description": "If enabled, attempts to extract agent email addresses from the property details. Increases the cost of the request."
    }
  },
  "additionalProperties": false
}
hasdata_zillow_property_getPropertyDetails annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}

Prompts

20 advertised

google_search — Google search

Advertised by the server during the last successful anonymous check.

Search Google and summarize the top organic results.

query
Search query (required)
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://google_serp/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_serp/hl
google_news — Google News

Advertised by the server during the last successful anonymous check.

Find recent news coverage on a topic.

query
Search query
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://google_serp/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_serp/hl
google_shopping — Google Shopping

Advertised by the server during the last successful anonymous check.

Compare product offers from Google Shopping.

query
Search query (required)
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://google_serp/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_serp/hl
google_short_videos — Google short videos

Advertised by the server during the last successful anonymous check.

Find short videos about a topic.

query
Search query (required)
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://google_serp/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_serp/hl
google_ai_mode — Google AI Mode

Advertised by the server during the last successful anonymous check.

Get Google AI Mode's answer with its sources.

query
Search query (required)
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://google_serp/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_serp/hl
google_maps_search — Google Maps search

Advertised by the server during the last successful anonymous check.

Find businesses and places on Google Maps.

query
Search query (required)
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://google_maps/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_maps/hl
google_maps_reviews — Google Maps reviews

Advertised by the server during the last successful anonymous check.

Summarize what reviewers say about a place.

place_id
Google Maps place ID (from a Maps search result) (required)
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://google_maps/hl
sort
Review order (`sortBy`), e.g. `mostRelevant`
zillow_listings — Zillow listings

Advertised by the server during the last successful anonymous check.

Find homes for sale, for rent or sold in an area.

location
City, neighborhood or ZIP code, e.g. "Austin, TX" (required)
listing_type
Listing type (`type`), e.g. `forSale` (required)
min_price
Minimum price, digits only
max_price
Maximum price, digits only
min_beds
Minimum bedrooms, digits only
zillow_property — Zillow property

Advertised by the server during the last successful anonymous check.

Get the full details of one Zillow property.

url
Zillow property URL, e.g. https://www.zillow.com/homedetails/.../12345678_zpid/ (required)
google_trends — Google Trends

Advertised by the server during the last successful anonymous check.

See how interest in a topic changes over time.

query
Search term (required)
region
Country or region code (`geo`), e.g. `AF`; full list: hasdata://google_trends/geo
period
Date range, e.g. `today 12-m` or `2024-01-01 2024-06-30`
data_type
Data type (`dataType`), e.g. `timeseries`
instagram_profile — Instagram profile

Advertised by the server during the last successful anonymous check.

Look up a public Instagram profile.

username
Instagram username, no @ (required)
scrape_web_page — Scrape a web page

Advertised by the server during the last successful anonymous check.

Fetch any public web page and summarize its content.

url
Page URL (required)
indeed_hiring_map — Indeed hiring map

Advertised by the server during the last successful anonymous check.

See where a role is being hired for and at what salary.

role
Job title or keyword (required)
location
City, state or country (use a state or country to map across cities) (required)
sort
Result order (`sort`), e.g. `relevance`
site
Indeed site, e.g. uk.indeed.com (default www.indeed.com) (`domain`), e.g. `ar.indeed.com`; full list: hasdata://indeed/domain
youtube_search — YouTube search

Advertised by the server during the last successful anonymous check.

Find YouTube videos and channels about a topic.

query
Search query (required)
country
Two-letter country code (`gl`), e.g. `ac`; full list: hasdata://youtube/gl
language
Two-letter language code (`hl`), e.g. `af`; full list: hasdata://youtube/hl
sort
Result order (`sortBy`), e.g. `relevance`
youtube_transcript — YouTube transcript

Advertised by the server during the last successful anonymous check.

Summarize what is said in a YouTube video.

video_id
11-character YouTube video ID (required)
language
Transcript language code, e.g. en or pt-BR
tiktok_trend — TikTok trend

Advertised by the server during the last successful anonymous check.

See what is being posted on TikTok about a topic.

keyword
Topic or hashtag (required)
tiktok_profile — TikTok profile

Advertised by the server during the last successful anonymous check.

Look up a public TikTok profile.

username
TikTok username (required)
amazon_product_research — Amazon product research

Advertised by the server during the last successful anonymous check.

Compare Amazon offers for a product by price, rating and review count.

query
Search term (required)
marketplace
Amazon domain (`domain`), e.g. `www.amazon.com`
sort
Result order (`sortBy`), e.g. `featured`
yelp_reputation — Yelp reputation

Advertised by the server during the last successful anonymous check.

Pull a business's rating and recent review themes.

place_id
Yelp business ID, e.g. -4ofMtrD7pSpZIX5pnDkig (from a Yelp search) (required)
language
Review language code, e.g. en
google_flights — Google Flights

Advertised by the server during the last successful anonymous check.

Compare flight options between two airports.

origin
Departure airport IATA code (required)
destination
Arrival airport IATA code (required)
date
Outbound date, yyyy-MM-dd (required)
return_date
Return date, yyyy-MM-dd (required for roundTrip)
trip_type
Trip type: oneWay, or roundTrip (needs a return date) (`type`), e.g. `roundTrip`
cabin
Cabin class (`travelClass`), e.g. `economy`
currency
Price currency code, e.g. USD (`currency`), e.g. `ALL`; full list: hasdata://google_travel/currency

Resources

159 advertised

amazon_domain — amazon: allowed domain values

Advertised by the server during the last successful anonymous check.

All 23 accepted values of `domain` (Amazon domain to use. Default is www.amazon.com.)

amazon_domain URI
hasdata://amazon/domain

MIME type: application/json

amazon_language — amazon: allowed language values

Advertised by the server during the last successful anonymous check.

All 22 accepted values of `language` (Optional Amazon language code. Supported values depend on the selected domain.)

amazon_language URI
hasdata://amazon/language

MIME type: application/json

amazon_shippingLocation — amazon: allowed shippingLocation values

Advertised by the server during the last successful anonymous check.

All 238 accepted values of `shippingLocation` (The two-letter country code to define the country of the delivery address.)

amazon_shippingLocation URI
hasdata://amazon/shippingLocation

MIME type: application/json

amazon_reviewerType — amazon: allowed reviewerType values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `reviewerType` (The type of reviewers to filter.)

amazon_reviewerType URI
hasdata://amazon/reviewerType

MIME type: application/json

amazon_stars — amazon: allowed stars values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `stars` (The star ratings to filter reviews.)

amazon_stars URI
hasdata://amazon/stars

MIME type: application/json

amazon_format — amazon: allowed format values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `format` (The format type to filter reviews. Include reviews of any product format/variant or specifically to the current format/variant.)

amazon_format URI
hasdata://amazon/format

MIME type: application/json

amazon_mediaType — amazon: allowed mediaType values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `mediaType` (The media type to filter reviews.)

amazon_mediaType URI
hasdata://amazon/mediaType

MIME type: application/json

amazon_reviews_sortBy — amazon_reviews: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `sortBy` (The criterion to sort reviews.)

amazon_reviews_sortBy URI
hasdata://amazon_reviews/sortBy

MIME type: application/json

amazon_search_sortBy — amazon_search: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `sortBy` (Parameter used for sorting results)

amazon_search_sortBy URI
hasdata://amazon_search/sortBy

MIME type: application/json

bing_mkt — bing: allowed mkt values

Advertised by the server during the last successful anonymous check.

All 38 accepted values of `mkt` (The two-letter country code for the country to search from.)

bing_mkt URI
hasdata://bing/mkt

MIME type: application/json

bing_cc — bing: allowed cc values

Advertised by the server during the last successful anonymous check.

All 36 accepted values of `cc` (The two-letter country code for the country to search from.)

bing_cc URI
hasdata://bing/cc

MIME type: application/json

bing_setLang — bing: allowed setLang values

Advertised by the server during the last successful anonymous check.

All 39 accepted values of `setLang` (The language of the user interface and preferred result language. Accepts a two-letter language code (e.g. `en`, `de`) or a locale/script variant (e.g. `en-gb`, `zh-hans`, `pt-br`).)

bing_setLang URI
hasdata://bing/setLang

MIME type: application/json

bing_safeSearch — bing: allowed safeSearch values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `safeSearch` (Adult Content Filtering option.)

bing_safeSearch URI
hasdata://bing/safeSearch

MIME type: application/json

bing_deviceType — bing: allowed deviceType values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `deviceType` (Specify the device type for the search.)

bing_deviceType URI
hasdata://bing/deviceType

MIME type: application/json

booking_language — booking: allowed language values

Advertised by the server during the last successful anonymous check.

All 45 accepted values of `language` (Language of the Booking.com interface and localized fields in the response.)

booking_language URI
hasdata://booking/language

MIME type: application/json

booking_currency — booking: allowed currency values

Advertised by the server during the last successful anonymous check.

All 52 accepted values of `currency` (Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency.)

booking_currency URI
hasdata://booking/currency

MIME type: application/json

booking_sort — booking: allowed sort values

Advertised by the server during the last successful anonymous check.

All 10 accepted values of `sort` (Sort order applied by Booking.com to the results page.)

booking_sort URI
hasdata://booking/sort

MIME type: application/json

booking_propertyType__ — booking: allowed propertyType__ values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `propertyType__` (Filter by property type. Multiple values are combined with OR.)

booking_propertyType__ URI
hasdata://booking/propertyType__

MIME type: application/json

booking_rating__ — booking: allowed rating__ values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `rating__` (Filter by official star rating. Multiple values are combined with OR.)

booking_rating__ URI
hasdata://booking/rating__

MIME type: application/json

booking_reviewScore__ — booking: allowed reviewScore__ values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `reviewScore__` (Filter by minimum guest review score bucket. Multiple values are combined with OR.)

booking_reviewScore__ URI
hasdata://booking/reviewScore__

MIME type: application/json

booking_distanceFromCenter__ — booking: allowed distanceFromCenter__ values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `distanceFromCenter__` (Filter by distance from the destination center. Multiple values are combined with OR.)

booking_distanceFromCenter__ URI
hasdata://booking/distanceFromCenter__

MIME type: application/json

booking_propertyAccessibility__ — booking: allowed propertyAccessibility__ values

Advertised by the server during the last successful anonymous check.

All 7 accepted values of `propertyAccessibility__` (Filter by property-level accessibility features. Multiple values are combined with OR.)

booking_propertyAccessibility__ URI
hasdata://booking/propertyAccessibility__

MIME type: application/json

booking_meals__ — booking: allowed meals__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `meals__` (Filter by available meal plans. Multiple values are combined with OR.)

booking_meals__ URI
hasdata://booking/meals__

MIME type: application/json

booking_facilities__ — booking: allowed facilities__ values

Advertised by the server during the last successful anonymous check.

All 13 accepted values of `facilities__` (Filter by property-level facilities. Multiple values are combined with OR.)

booking_facilities__ URI
hasdata://booking/facilities__

MIME type: application/json

booking_roomFacilities__ — booking: allowed roomFacilities__ values

Advertised by the server during the last successful anonymous check.

All 25 accepted values of `roomFacilities__` (Filter by in-room facilities. Multiple values are combined with OR.)

booking_roomFacilities__ URI
hasdata://booking/roomFacilities__

MIME type: application/json

booking_roomAccessibility__ — booking: allowed roomAccessibility__ values

Advertised by the server during the last successful anonymous check.

All 11 accepted values of `roomAccessibility__` (Filter by in-room accessibility features. Multiple values are combined with OR.)

booking_roomAccessibility__ URI
hasdata://booking/roomAccessibility__

MIME type: application/json

booking_bedPreference__ — booking: allowed bedPreference__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `bedPreference__` (Filter by bed configuration. Multiple values are combined with OR.)

booking_bedPreference__ URI
hasdata://booking/bedPreference__

MIME type: application/json

booking_reservationPolicy__ — booking: allowed reservationPolicy__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `reservationPolicy__` (Filter by reservation flexibility. Multiple values are combined with OR.)

booking_reservationPolicy__ URI
hasdata://booking/reservationPolicy__

MIME type: application/json

booking_onlinePayment__ — booking: allowed onlinePayment__ values

Advertised by the server during the last successful anonymous check.

All 1 accepted values of `onlinePayment__` (Filter by online payment options.)

booking_onlinePayment__ URI
hasdata://booking/onlinePayment__

MIME type: application/json

booking_travelGroup__ — booking: allowed travelGroup__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `travelGroup__` (Filter by travel-group oriented stay options. Multiple values are combined with OR.)

booking_travelGroup__ URI
hasdata://booking/travelGroup__

MIME type: application/json

duckduckgo_kl — duckduckgo: allowed kl values

Advertised by the server during the last successful anonymous check.

All 37 accepted values of `kl` (DuckDuckGo region code in `<country>-<language>` form (e.g. `us-en`, `de-de`). Sets country and interface language at once; takes precedence over `cc`/`setLang`. Use `wt-wt` for no region.)

duckduckgo_kl URI
hasdata://duckduckgo/kl

MIME type: application/json

duckduckgo_cc — duckduckgo: allowed cc values

Advertised by the server during the last successful anonymous check.

All 36 accepted values of `cc` (The two-letter country code for the country to search from. Combined with `setLang` to form the DuckDuckGo region. Ignored if `kl` is set.)

duckduckgo_cc URI
hasdata://duckduckgo/cc

MIME type: application/json

duckduckgo_setLang — duckduckgo: allowed setLang values

Advertised by the server during the last successful anonymous check.

All 33 accepted values of `setLang` (The preferred result/interface language code — usually two letters (e.g. `en`, `de`), with script-tag variants for some languages (e.g. `zh-hans`, `zh-hant`). Combined with `cc` to form the DuckDuckGo region. Ignored if `kl` is set.)

duckduckgo_setLang URI
hasdata://duckduckgo/setLang

MIME type: application/json

duckduckgo_safeSearch — duckduckgo: allowed safeSearch values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `safeSearch` (Adult Content Filtering option.)

duckduckgo_safeSearch URI
hasdata://duckduckgo/safeSearch

MIME type: application/json

duckduckgo_deviceType — duckduckgo: allowed deviceType values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `deviceType` (Specify the device type for the search.)

duckduckgo_deviceType URI
hasdata://duckduckgo/deviceType

MIME type: application/json

facebook_language — facebook: allowed language values

Advertised by the server during the last successful anonymous check.

All 32 accepted values of `language` (Language the page is rendered in. Facebook serves a page in the language of the request, so this changes the localised strings (`followersCount`, `followingCount`, `category`) while the exact figures (`likesCount`, `talkingAboutCount`) stay numeric in every language.)

facebook_language URI
hasdata://facebook/language

MIME type: application/json

glassdoor_sort — glassdoor: allowed sort values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `sort` (The sorting option for the search results.)

glassdoor_sort URI
hasdata://glassdoor/sort

MIME type: application/json

glassdoor_domain — glassdoor: allowed domain values

Advertised by the server during the last successful anonymous check.

All 22 accepted values of `domain` (The domain of the Glassdoor site (optional).)

glassdoor_domain URI
hasdata://glassdoor/domain

MIME type: application/json

glassdoor_datePosted — glassdoor: allowed datePosted values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `datePosted` (Returns only jobs posted within the given number of days.)

glassdoor_datePosted URI
hasdata://glassdoor/datePosted

MIME type: application/json

glassdoor_radius — glassdoor: allowed radius values

Advertised by the server during the last successful anonymous check.

All 7 accepted values of `radius` (Search radius around the location, in miles. `0` keeps only jobs in the location itself. Glassdoor uses 25 miles when this is not set.)

glassdoor_radius URI
hasdata://glassdoor/radius

MIME type: application/json

glassdoor_minRating — glassdoor: allowed minRating values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `minRating` (Returns jobs from companies rated at least this high. Glassdoor applies the filter approximately, so a few companies rated slightly below the value can appear.)

glassdoor_minRating URI
hasdata://glassdoor/minRating

MIME type: application/json

google_finance_window — google_finance: allowed window values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `window` (Time range of the price chart in `graph`.)

google_finance_window URI
hasdata://google_finance/window

MIME type: application/json

google_finance_hl — google_finance: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

google_finance_hl URI
hasdata://google_finance/hl

MIME type: application/json

google_images_domain — google_images: allowed domain values

Advertised by the server during the last successful anonymous check.

All 195 accepted values of `domain` (Google domain to use. Default is google.com.)

google_images_domain URI
hasdata://google_images/domain

MIME type: application/json

google_images_gl — google_images: allowed gl values

Advertised by the server during the last successful anonymous check.

All 245 accepted values of `gl` (The two-letter country code for the country you want to limit the search to.)

google_images_gl URI
hasdata://google_images/gl

MIME type: application/json

google_images_hl — google_images: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

google_images_hl URI
hasdata://google_images/hl

MIME type: application/json

google_images_safe — google_images: allowed safe values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `safe` (Adult Content Filtering option.)

google_images_safe URI
hasdata://google_images/safe

MIME type: application/json

google_images_deviceType — google_images: allowed deviceType values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `deviceType` (Specify the device type for the search.)

google_images_deviceType URI
hasdata://google_images/deviceType

MIME type: application/json

google_maps_hl — google_maps: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

google_maps_hl URI
hasdata://google_maps/hl

MIME type: application/json

google_maps_gl — google_maps: allowed gl values

Advertised by the server during the last successful anonymous check.

All 245 accepted values of `gl` (The two-letter country code for the country you want to limit the search to.)

google_maps_gl URI
hasdata://google_maps/gl

MIME type: application/json

google_maps_domain — google_maps: allowed domain values

Advertised by the server during the last successful anonymous check.

All 195 accepted values of `domain` (Google domain to use. Default is google.com.)

google_maps_domain URI
hasdata://google_maps/domain

MIME type: application/json

google_maps_sortBy — google_maps: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `sortBy` (Parameter used for sorting and refining results.)

google_maps_sortBy URI
hasdata://google_maps/sortBy

MIME type: application/json

google_scholar_hl — google_scholar: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

google_scholar_hl URI
hasdata://google_scholar/hl

MIME type: application/json

google_scholar_lr — google_scholar: allowed lr values

Advertised by the server during the last successful anonymous check.

All 43 accepted values of `lr` (The 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content.)

google_scholar_lr URI
hasdata://google_scholar/lr

MIME type: application/json

google_scholar_asSdt — google_scholar: allowed asSdt values

Advertised by the server during the last successful anonymous check.

All 302 accepted values of `asSdt` (Search type/filter. Pick a value below to search case law from a specific court, or use `0,5` for Articles (default) / `7` to include patents. Any comma-separated court-code combination Google Scholar accepts also works here as free text beyond this list.)

google_scholar_asSdt URI
hasdata://google_scholar/asSdt

MIME type: application/json

google_scholar_safe — google_scholar: allowed safe values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `safe` (Adult content filtering option.)

google_scholar_safe URI
hasdata://google_scholar/safe

MIME type: application/json

google_serp_gl — google_serp: allowed gl values

Advertised by the server during the last successful anonymous check.

All 245 accepted values of `gl` (The two-letter country code for the country you want to limit the search to.)

google_serp_gl URI
hasdata://google_serp/gl

MIME type: application/json

google_serp_hl — google_serp: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

google_serp_hl URI
hasdata://google_serp/hl

MIME type: application/json

google_serp_so — google_serp: allowed so values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `so` (Sort order for articles in a story. Use only with storyToken.)

google_serp_so URI
hasdata://google_serp/so

MIME type: application/json

google_serp_domain — google_serp: allowed domain values

Advertised by the server during the last successful anonymous check.

All 195 accepted values of `domain` (Google domain to use. Default is google.com.)

google_serp_domain URI
hasdata://google_serp/domain

MIME type: application/json

google_serp_searchType — google_serp: allowed searchType values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `searchType` (Parameter for fetching specific product information, such as 'offers', 'specs', or 'reviews'.)

google_serp_searchType URI
hasdata://google_serp/searchType

MIME type: application/json

google_serp_lr — google_serp: allowed lr values

Advertised by the server during the last successful anonymous check.

All 43 accepted values of `lr` (The 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content.)

google_serp_lr URI
hasdata://google_serp/lr

MIME type: application/json

google_serp_safe — google_serp: allowed safe values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `safe` (Adult Content Filtering option.)

google_serp_safe URI
hasdata://google_serp/safe

MIME type: application/json

google_serp_tbm — google_serp: allowed tbm values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `tbm` (Specify the type of search.)

google_serp_tbm URI
hasdata://google_serp/tbm

MIME type: application/json

google_serp_deviceType — google_serp: allowed deviceType values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `deviceType` (Specify the device type for the search.)

google_serp_deviceType URI
hasdata://google_serp/deviceType

MIME type: application/json

google_serp_cr — google_serp: allowed cr values

Advertised by the server during the last successful anonymous check.

All 237 accepted values of `cr` (The country code for the country you want to limit the search to.)

google_serp_cr URI
hasdata://google_serp/cr

MIME type: application/json

google_travel_flights_type — google_travel_flights: allowed type values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `type` (Specifies the type of flight. Options: - `roundTrip` (default) - `oneWay` - `multiCity` (requires `multiCityJson` for flight details) For round trips, retrieve return flight details with a separate request using `departureToken`.)

google_travel_flights_type URI
hasdata://google_travel_flights/type

MIME type: application/json

google_travel_gl — google_travel: allowed gl values

Advertised by the server during the last successful anonymous check.

All 245 accepted values of `gl` (The two-letter country code for the country you want to limit the search to.)

google_travel_gl URI
hasdata://google_travel/gl

MIME type: application/json

google_travel_hl — google_travel: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

google_travel_hl URI
hasdata://google_travel/hl

MIME type: application/json

google_travel_currency — google_travel: allowed currency values

Advertised by the server during the last successful anonymous check.

All 71 accepted values of `currency` (Parameter defines the currency of the returned prices)

google_travel_currency URI
hasdata://google_travel/currency

MIME type: application/json

google_travel_flights_travelClass — google_travel_flights: allowed travelClass values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `travelClass` (The travel class for the flight (Economy, Premium Economy, Business, or First).)

google_travel_flights_travelClass URI
hasdata://google_travel_flights/travelClass

MIME type: application/json

google_travel_flights_sortBy — google_travel_flights: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `sortBy` (Sort the flight results based on price, departure time, arrival time, etc.)

google_travel_flights_sortBy URI
hasdata://google_travel_flights/sortBy

MIME type: application/json

google_travel_flights_stops — google_travel_flights: allowed stops values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `stops` (Restrict the number of stops (layovers) in the flight itinerary.)

google_travel_flights_stops URI
hasdata://google_travel_flights/stops

MIME type: application/json

google_travel_flights_deals_type — google_travel_flights_deals: allowed type values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `type` (Flight type. Requires `arrivalId`. - `1` / `roundTrip` — round trip (default) - `2` / `oneWay` — one way A one-way deal carries no `returnDate` and no `tripLengthDays`.)

google_travel_flights_deals_type URI
hasdata://google_travel_flights_deals/type

MIME type: application/json

google_travel_flights_deals_travelClass — google_travel_flights_deals: allowed travelClass values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `travelClass` (Travel class. Requires `arrivalId`. - `1` / `economy` — economy (default) - `2` / `premiumEconomy` — premium economy - `3` / `business` — business - `4` / `first` — first Fares climb steeply: on LAX-NRT the same search ran $730 in economy against $2882 in business.)

google_travel_flights_deals_travelClass URI
hasdata://google_travel_flights_deals/travelClass

MIME type: application/json

google_travel_travelDuration — google_travel: allowed travelDuration values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `travelDuration` (Preset trip length. Requires `arrivalId`. Cannot be combined with `returnDate` or `tripLength`. - `1` / `week` — about a week (6-8 days) - `2` / `weekend` — a weekend (2-3 days) - `3` / `twoWeeks` — about two weeks (13-15 days) Pairs with `outboundDate` to limit the departure period. Ignored when `type` is `oneWay`.)

google_travel_travelDuration URI
hasdata://google_travel/travelDuration

MIME type: application/json

google_travel_flights_deals_stops — google_travel_flights_deals: allowed stops values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `stops` (Maximum number of stops. Requires `arrivalId`. Omitted, any number is allowed. - `1` / `nonStop` — direct flights only - `2` / `oneStopOrFewer` — at most one connection - `3` / `twoStopsOrFewer` — at most two connections A route with nothing at that depth returns an empty `flightDeals` array, not an error — `nonStop` on a route without a direct flight is a valid, empty answer.)

google_travel_flights_deals_stops URI
hasdata://google_travel_flights_deals/stops

MIME type: application/json

google_travel_hotels_sortBy — google_travel_hotels: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `sortBy` (Sort hotel results. Options: - `lowestPrice` — lowest price - `highestRating` — highest rating - `mostReviewed` — most reviewed)

google_travel_hotels_sortBy URI
hasdata://google_travel_hotels/sortBy

MIME type: application/json

google_travel_propertyType__ — google_travel: allowed propertyType__ values

Advertised by the server during the last successful anonymous check.

All 25 accepted values of `propertyType__` (List of property types to filter by (e.g., `hotelResort,hotelMotel`). Values prefixed `hotel*` apply when searching hotels (the default mode). Values prefixed `rental*` apply when `vacationRentals=true`. The two sets are disjoint because Google Hotels exposes different property-type catalogs for each mode — pass values matching the mode you're querying.)

google_travel_propertyType__ URI
hasdata://google_travel/propertyType__

MIME type: application/json

google_travel_amenity__ — google_travel: allowed amenity__ values

Advertised by the server during the last successful anonymous check.

All 32 accepted values of `amenity__` (List of amenities to filter by (e.g., `hotelFreeWifi,hotelPool`). Values prefixed `hotel*` apply when searching hotels (the default mode). Values prefixed `rental*` apply when `vacationRentals=true`. The two sets are disjoint because Google Hotels exposes different amenity catalogs for each mode — pass values matching the mode you're querying.)

google_travel_amenity__ URI
hasdata://google_travel/amenity__

MIME type: application/json

google_travel_rating — google_travel: allowed rating values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `rating` (Filter by minimum overall guest rating. Options: - `threePointFivePlus` — 3.5 stars or higher - `fourPlus` — 4.0 stars or higher - `fourPointFivePlus` — 4.5 stars or higher)

google_travel_rating URI
hasdata://google_travel/rating

MIME type: application/json

google_trends_geo — google_trends: allowed geo values

Advertised by the server during the last successful anonymous check.

All 3517 accepted values of `geo` (Specifies the location for the search. Defaults to Worldwide if not set or empty.)

google_trends_geo URI
hasdata://google_trends/geo

MIME type: application/json

google_trends_region — google_trends: allowed region values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `region` (Used to get more specific results when using "Interest by region" data type. Other data types do not accept this parameter. The default value depends on the geo location that is set. Available options: - `country`: Country - `region`: Subregion - `dma`: Metro - `city`: City Note: Not all region options will return results for every geo location.)

google_trends_region URI
hasdata://google_trends/region

MIME type: application/json

google_trends_dataType — google_trends: allowed dataType values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `dataType` (Defines the type of search to perform. Available options: - `timeseries`: Interest over time (default). Accepts both single and multiple queries per search. - `geoMap`: Interest by region. Accepts both single and multiple queries per search. - `relatedTopics`: Related topics. Accepts only single query per search. - `relatedQueries`: Related queries. Accepts only single query per search.)

google_trends_dataType URI
hasdata://google_trends/dataType

MIME type: application/json

google_trends_cat — google_trends: allowed cat values

Advertised by the server during the last successful anonymous check.

All 1133 accepted values of `cat` (Category of the search term. The default value is 0 ("All categories").)

google_trends_cat URI
hasdata://google_trends/cat

MIME type: application/json

google_trends_gprop — google_trends: allowed gprop values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `gprop` (Sorts results by a specific property. The default property is Web Search (applied when the gprop parameter is not set or empty). Available options: - `images`: Image Search - `news`: News Search - `froogle`: Google Shopping - `youtube`: YouTube Search)

google_trends_gprop URI
hasdata://google_trends/gprop

MIME type: application/json

indeed_sort — indeed: allowed sort values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `sort` (The sorting option for the search results.)

indeed_sort URI
hasdata://indeed/sort

MIME type: application/json

indeed_domain — indeed: allowed domain values

Advertised by the server during the last successful anonymous check.

All 62 accepted values of `domain` (The domain of the Indeed site (optional).)

indeed_domain URI
hasdata://indeed/domain

MIME type: application/json

indeed_datePosted — indeed: allowed datePosted values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `datePosted` (Returns only jobs posted within the given number of days.)

indeed_datePosted URI
hasdata://indeed/datePosted

MIME type: application/json

indeed_remoteType — indeed: allowed remoteType values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `remoteType` (Returns only remote (`remote`) or hybrid (`hybrid`) jobs. In the US, Indeed ties fully remote jobs to the country rather than a city, so use a country-wide location such as `United States`: with a city, Indeed returns few or no remote jobs.)

indeed_remoteType URI
hasdata://indeed/remoteType

MIME type: application/json

redfin_type — redfin: allowed type values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `type` (The type of listing.)

redfin_type URI
hasdata://redfin/type

MIME type: application/json

redfin_sort — redfin: allowed sort values

Advertised by the server during the last successful anonymous check.

All 12 accepted values of `sort` (The sorting option for the search results.)

redfin_sort URI
hasdata://redfin/sort

MIME type: application/json

redfin_monthlyPayment_mortgageTerm_ — redfin: allowed monthlyPayment_mortgageTerm_ values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `monthlyPayment_mortgageTerm_` (The mortgage term used to calculate the monthly payment.)

redfin_monthlyPayment_mortgageTerm_ URI
hasdata://redfin/monthlyPayment_mortgageTerm_

MIME type: application/json

redfin_cost_pricePerSqft__min_ — redfin: allowed cost_pricePerSqft__min_ values

Advertised by the server during the last successful anonymous check.

All 16 accepted values of `cost_pricePerSqft__min_` (The minimum price per square foot.)

redfin_cost_pricePerSqft__min_ URI
hasdata://redfin/cost_pricePerSqft__min_

MIME type: application/json

redfin_cost_pricePerSqft__max_ — redfin: allowed cost_pricePerSqft__max_ values

Advertised by the server during the last successful anonymous check.

All 16 accepted values of `cost_pricePerSqft__max_` (The maximum price per square foot.)

redfin_cost_pricePerSqft__max_ URI
hasdata://redfin/cost_pricePerSqft__max_

MIME type: application/json

redfin_cost_acceptedFinancing_ — redfin: allowed cost_acceptedFinancing_ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `cost_acceptedFinancing_` (The accepted financing type.)

redfin_cost_acceptedFinancing_ URI
hasdata://redfin/cost_acceptedFinancing_

MIME type: application/json

redfin_cost_priceReduced_ — redfin: allowed cost_priceReduced_ values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `cost_priceReduced_` (Filter listings by when the price was reduced.)

redfin_cost_priceReduced_ URI
hasdata://redfin/cost_priceReduced_

MIME type: application/json

redfin_homeTypes__ — redfin: allowed homeTypes__ values

Advertised by the server during the last successful anonymous check.

All 10 accepted values of `homeTypes__` (An array of home types to filter the listings. Allowed values depend on the listing `type`.)

redfin_homeTypes__ URI
hasdata://redfin/homeTypes__

MIME type: application/json

redfin_baths — redfin: allowed baths values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `baths` (The minimum number of bathrooms.)

redfin_baths URI
hasdata://redfin/baths

MIME type: application/json

redfin_forSaleSquareFeet_min_ — redfin: allowed forSaleSquareFeet_min_ values

Advertised by the server during the last successful anonymous check.

All 20 accepted values of `forSaleSquareFeet_min_` (The minimum square footage for for-sale listings.)

redfin_forSaleSquareFeet_min_ URI
hasdata://redfin/forSaleSquareFeet_min_

MIME type: application/json

redfin_forSaleSquareFeet_max_ — redfin: allowed forSaleSquareFeet_max_ values

Advertised by the server during the last successful anonymous check.

All 20 accepted values of `forSaleSquareFeet_max_` (The maximum square footage for for-sale listings.)

redfin_forSaleSquareFeet_max_ URI
hasdata://redfin/forSaleSquareFeet_max_

MIME type: application/json

redfin_lotSize_min_ — redfin: allowed lotSize_min_ values

Advertised by the server during the last successful anonymous check.

All 16 accepted values of `lotSize_min_` (The minimum lot size.)

redfin_lotSize_min_ URI
hasdata://redfin/lotSize_min_

MIME type: application/json

redfin_lotSize_max_ — redfin: allowed lotSize_max_ values

Advertised by the server during the last successful anonymous check.

All 16 accepted values of `lotSize_max_` (The maximum lot size.)

redfin_lotSize_max_ URI
hasdata://redfin/lotSize_max_

MIME type: application/json

redfin_yearBuilt_min_ — redfin: allowed yearBuilt_min_ values

Advertised by the server during the last successful anonymous check.

All 23 accepted values of `yearBuilt_min_` (The minimum year the property was built.)

redfin_yearBuilt_min_ URI
hasdata://redfin/yearBuilt_min_

MIME type: application/json

redfin_yearBuilt_max_ — redfin: allowed yearBuilt_max_ values

Advertised by the server during the last successful anonymous check.

All 23 accepted values of `yearBuilt_max_` (The maximum year the property was built.)

redfin_yearBuilt_max_ URI
hasdata://redfin/yearBuilt_max_

MIME type: application/json

redfin_stories_min_ — redfin: allowed stories_min_ values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `stories_min_` (The minimum number of stories.)

redfin_stories_min_ URI
hasdata://redfin/stories_min_

MIME type: application/json

redfin_stories_max_ — redfin: allowed stories_max_ values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `stories_max_` (The maximum number of stories.)

redfin_stories_max_ URI
hasdata://redfin/stories_max_

MIME type: application/json

redfin_listingType_category___ — redfin: allowed listingType_category___ values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `listingType_category___` (An array of listing categories.)

redfin_listingType_category___ URI
hasdata://redfin/listingType_category___

MIME type: application/json

redfin_statusOptions__ — redfin: allowed statusOptions__ values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `statusOptions__` (An array of listing statuses.)

redfin_statusOptions__ URI
hasdata://redfin/statusOptions__

MIME type: application/json

redfin_timeOnRedfin — redfin: allowed timeOnRedfin values

Advertised by the server during the last successful anonymous check.

All 12 accepted values of `timeOnRedfin` (How long the listing has been on Redfin.)

redfin_timeOnRedfin URI
hasdata://redfin/timeOnRedfin

MIME type: application/json

redfin_soldWithinOption — redfin: allowed soldWithinOption values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `soldWithinOption` (Filter sold listings by how recently they were sold.)

redfin_soldWithinOption URI
hasdata://redfin/soldWithinOption

MIME type: application/json

redfin_openHouseAndTour_openHouse_ — redfin: allowed openHouseAndTour_openHouse_ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `openHouseAndTour_openHouse_` (Filter listings with an open house.)

redfin_openHouseAndTour_openHouse_ URI
hasdata://redfin/openHouseAndTour_openHouse_

MIME type: application/json

redfin_homeFeatures_options___ — redfin: allowed homeFeatures_options___ values

Advertised by the server during the last successful anonymous check.

All 14 accepted values of `homeFeatures_options___` (An array of home feature flags to filter the listings.)

redfin_homeFeatures_options___ URI
hasdata://redfin/homeFeatures_options___

MIME type: application/json

redfin_homeFeatures_garageSpotsMin_ — redfin: allowed homeFeatures_garageSpotsMin_ values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `homeFeatures_garageSpotsMin_` (The minimum number of garage spots.)

redfin_homeFeatures_garageSpotsMin_ URI
hasdata://redfin/homeFeatures_garageSpotsMin_

MIME type: application/json

redfin_homeFeatures_poolType_ — redfin: allowed homeFeatures_poolType_ values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `homeFeatures_poolType_` (The type of pool.)

redfin_homeFeatures_poolType_ URI
hasdata://redfin/homeFeatures_poolType_

MIME type: application/json

redfin_homeFeatures_basement_ — redfin: allowed homeFeatures_basement_ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `homeFeatures_basement_` (The basement type.)

redfin_homeFeatures_basement_ URI
hasdata://redfin/homeFeatures_basement_

MIME type: application/json

redfin_rentalAmenities__ — redfin: allowed rentalAmenities__ values

Advertised by the server during the last successful anonymous check.

All 10 accepted values of `rentalAmenities__` (An array of rental amenities to filter the listings.)

redfin_rentalAmenities__ URI
hasdata://redfin/rentalAmenities__

MIME type: application/json

redfin_rentalOtherTerms__ — redfin: allowed rentalOtherTerms__ values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `rentalOtherTerms__` (An array of additional rental terms.)

redfin_rentalOtherTerms__ URI
hasdata://redfin/rentalOtherTerms__

MIME type: application/json

redfin_pets__ — redfin: allowed pets__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `pets__` (An array of pet types allowed.)

redfin_pets__ URI
hasdata://redfin/pets__

MIME type: application/json

redfin_schools_schoolType___ — redfin: allowed schools_schoolType___ values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `schools_schoolType___` (An array of school types.)

redfin_schools_schoolType___ URI
hasdata://redfin/schools_schoolType___

MIME type: application/json

tiktok_type — tiktok: allowed type values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `type` (What to search for — videos or users. Defaults to video.)

tiktok_type URI
hasdata://tiktok/type

MIME type: application/json

tripadvisor_domain — tripadvisor: allowed domain values

Advertised by the server during the last successful anonymous check.

All 49 accepted values of `domain` (Tripadvisor domain to use. The domain sets the language of the results. Default is `www.tripadvisor.com`.)

tripadvisor_domain URI
hasdata://tripadvisor/domain

MIME type: application/json

tripadvisor_sortBy — tripadvisor: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `sortBy` (Review order.)

tripadvisor_sortBy URI
hasdata://tripadvisor/sortBy

MIME type: application/json

tripadvisor_rating__ — tripadvisor: allowed rating__ values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `rating__` (Only reviews with these ratings. Multiple values are combined with OR.)

tripadvisor_rating__ URI
hasdata://tripadvisor/rating__

MIME type: application/json

tripadvisor_month__ — tripadvisor: allowed month__ values

Advertised by the server during the last successful anonymous check.

All 12 accepted values of `month__` (Only reviews of visits in these months (1 = January). Multiple values are combined with OR.)

tripadvisor_month__ URI
hasdata://tripadvisor/month__

MIME type: application/json

tripadvisor_typeOfVisit__ — tripadvisor: allowed typeOfVisit__ values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `typeOfVisit__` (Only reviews of these trip types. Multiple values are combined with OR.)

tripadvisor_typeOfVisit__ URI
hasdata://tripadvisor/typeOfVisit__

MIME type: application/json

tripadvisor_type — tripadvisor: allowed type values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `type` (Limits results to one type. `all` mixes destinations, hotels, restaurants and things to do; `forums` returns forum topics instead of places.)

tripadvisor_type URI
hasdata://tripadvisor/type

MIME type: application/json

walmart_domain — walmart: allowed domain values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `domain` (Walmart storefront the item belongs to. Each storefront has its own catalog, item ids, prices and currency, so an id from one storefront does not resolve on another. Ignored when `url` is provided. Default is `walmart.com`.)

walmart_domain URI
hasdata://walmart/domain

MIME type: application/json

walmart_language — walmart: allowed language values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `language` (Language of the product details. Availability depends on the storefront - `walmart.com` serves `en` and `es`, `walmart.ca` serves `en` and `fr`. A language the storefront does not support falls back to its default.)

walmart_language URI
hasdata://walmart/language

MIME type: application/json

walmart_reviews_sort — walmart_reviews: allowed sort values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `sort` (Order of the returned reviews, named as the Walmart review page names it. Default is `mostRelevant`.)

walmart_reviews_sort URI
hasdata://walmart_reviews/sort

MIME type: application/json

walmart_search_sort — walmart_search: allowed sort values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `sort` (The sorting option for the search results.)

walmart_search_sort URI
hasdata://walmart_search/sort

MIME type: application/json

walmart_deliveryType — walmart: allowed deliveryType values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `deliveryType` (Keep only the products available with the selected fulfillment method. Default is `shipping`. Note that `pickup` is answered against one Walmart store, so an item in stock nationally can still be unavailable for `pickup` nearby - the response then reports that nothing matched the filters rather than that the query had no results.)

walmart_deliveryType URI
hasdata://walmart/deliveryType

MIME type: application/json

web_scraping_proxyType — web_scraping: allowed proxyType values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `proxyType` (Type of proxy to use.)

web_scraping_proxyType URI
hasdata://web_scraping/proxyType

MIME type: application/json

web_scraping_proxyCountry — web_scraping: allowed proxyCountry values

Advertised by the server during the last successful anonymous check.

All 13 accepted values of `proxyCountry` (Optional proxy country code.)

web_scraping_proxyCountry URI
hasdata://web_scraping/proxyCountry

MIME type: application/json

yellowpages_sort — yellowpages: allowed sort values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `sort` (The sorting option for the search results.)

yellowpages_sort URI
hasdata://yellowpages/sort

MIME type: application/json

yellowpages_domain — yellowpages: allowed domain values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `domain` (YellowPages domain to use. Default is `www.yellowpages.com`.)

yellowpages_domain URI
hasdata://yellowpages/domain

MIME type: application/json

yelp_domain — yelp: allowed domain values

Advertised by the server during the last successful anonymous check.

All 40 accepted values of `domain` (Yelp domain to use. Default is `www.yelp.com`.)

yelp_domain URI
hasdata://yelp/domain

MIME type: application/json

yelp_sortBy — yelp: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 6 accepted values of `sortBy` (The order in which the reviews are returned. Defaults to relevanceDesc.)

yelp_sortBy URI
hasdata://yelp/sortBy

MIME type: application/json

youtube_tab — youtube: allowed tab values

Advertised by the server during the last successful anonymous check.

All 11 accepted values of `tab` (Channel tab to scrape. Each tab returns a different content shape: - `featured` (default) — channel Home page (channel trailer + curated rows) - `videos` — uploaded long-form videos - `shorts` — Shorts feed - `streams` — past and upcoming live streams - `playlists` — created and saved playlists - `posts` / `community` — community posts - `podcasts` — podcast episodes - `releases` — music releases - `about` — channel description, links, stats - `store` — channel merch)

youtube_tab URI
hasdata://youtube/tab

MIME type: application/json

youtube_gl — youtube: allowed gl values

Advertised by the server during the last successful anonymous check.

All 245 accepted values of `gl` (The two-letter country code for the country you want to limit the search to.)

youtube_gl URI
hasdata://youtube/gl

MIME type: application/json

youtube_hl — youtube: allowed hl values

Advertised by the server during the last successful anonymous check.

All 159 accepted values of `hl` (The two-letter language code for the language you want to use for the search.)

youtube_hl URI
hasdata://youtube/hl

MIME type: application/json

youtube_deviceType — youtube: allowed deviceType values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `deviceType` (Device type for the request.)

youtube_deviceType URI
hasdata://youtube/deviceType

MIME type: application/json

youtube_sortBy — youtube: allowed sortBy values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `sortBy` (Sort order applied to the results page. `relevance` (default) — best match for the query; `date` — newest first; `views` — most viewed first; `rating` — highest rated first; `popularity` — trending/most popular.)

youtube_sortBy URI
hasdata://youtube/sortBy

MIME type: application/json

youtube_date — youtube: allowed date values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `date` (Limit results to videos uploaded within this time window relative to now.)

youtube_date URI
hasdata://youtube/date

MIME type: application/json

youtube_videoType — youtube: allowed videoType values

Advertised by the server during the last successful anonymous check.

All 5 accepted values of `videoType` (Restrict results to a single YouTube content type — regular videos, Shorts, channels, playlists, or movies.)

youtube_videoType URI
hasdata://youtube/videoType

MIME type: application/json

youtube_length — youtube: allowed length values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `length` (Filter by video duration bucket: - `under4` — under 4 minutes - `between420` — 4 to 20 minutes - `plus20` — over 20 minutes)

youtube_length URI
hasdata://youtube/length

MIME type: application/json

youtube_filters__ — youtube: allowed filters__ values

Advertised by the server during the last successful anonymous check.

All 11 accepted values of `filters__` (Feature flags to require on results. Multiple values are combined with AND (every flag must apply). - `hd` — HD quality - `k4` — 4K quality - `hdr` — HDR - `subtitles` — has subtitles/closed captions - `cc` — Creative Commons license - `d3` — 3D video - `d360` — 360° video - `vr180` — VR180 video - `live` — currently live - `bought` — purchased/paid content - `location` — has a geographic location tag)

youtube_filters__ URI
hasdata://youtube/filters__

MIME type: application/json

youtube_type — youtube: allowed type values

Advertised by the server during the last successful anonymous check.

All 1 accepted values of `type` (Set to `asr` to fetch the YouTube auto-generated (speech-recognition) track. Omit to fetch the human-authored track for `languageCode` when one exists.)

youtube_type URI
hasdata://youtube/type

MIME type: application/json

zillow_type — zillow: allowed type values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `type` (The type of listing.)

zillow_type URI
hasdata://zillow/type

MIME type: application/json

zillow_sort — zillow: allowed sort values

Advertised by the server during the last successful anonymous check.

All 11 accepted values of `sort` (The sorting option for the search results.)

zillow_sort URI
hasdata://zillow/sort

MIME type: application/json

zillow_homeTypes__ — zillow: allowed homeTypes__ values

Advertised by the server during the last successful anonymous check.

All 7 accepted values of `homeTypes__` (An array of home types to filter the listings.)

zillow_homeTypes__ URI
hasdata://zillow/homeTypes__

MIME type: application/json

zillow_listingPublishOptions__ — zillow: allowed listingPublishOptions__ values

Advertised by the server during the last successful anonymous check.

All 7 accepted values of `listingPublishOptions__` (An array of listing publish options. Use `ownerPosted` for listings by owner and `agentListed` for listings by agent.)

zillow_listingPublishOptions__ URI
hasdata://zillow/listingPublishOptions__

MIME type: application/json

zillow_propertyStatus__ — zillow: allowed propertyStatus__ values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `propertyStatus__` (An array of property statuses.)

zillow_propertyStatus__ URI
hasdata://zillow/propertyStatus__

MIME type: application/json

zillow_tours__ — zillow: allowed tours__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `tours__` (An array of tour options.)

zillow_tours__ URI
hasdata://zillow/tours__

MIME type: application/json

zillow_otherAmenities__ — zillow: allowed otherAmenities__ values

Advertised by the server during the last successful anonymous check.

All 8 accepted values of `otherAmenities__` (An array of other amenities.)

zillow_otherAmenities__ URI
hasdata://zillow/otherAmenities__

MIME type: application/json

zillow_views__ — zillow: allowed views__ values

Advertised by the server during the last successful anonymous check.

All 4 accepted values of `views__` (An array of views.)

zillow_views__ URI
hasdata://zillow/views__

MIME type: application/json

zillow_pets__ — zillow: allowed pets__ values

Advertised by the server during the last successful anonymous check.

All 3 accepted values of `pets__` (An array of pet options.)

zillow_pets__ URI
hasdata://zillow/pets__

MIME type: application/json

zillow_basement__ — zillow: allowed basement__ values

Advertised by the server during the last successful anonymous check.

All 2 accepted values of `basement__` (An array of basement options.)

zillow_basement__ URI
hasdata://zillow/basement__

MIME type: application/json

zillow_daysOnZillow — zillow: allowed daysOnZillow values

Advertised by the server during the last successful anonymous check.

All 9 accepted values of `daysOnZillow` (The number of days a listing has been on Zillow.)

zillow_daysOnZillow URI
hasdata://zillow/daysOnZillow

MIME type: application/json

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (1 of 1 answered).

  1. 2026-11-07: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
1260 ms
95th percentile latency
1260 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1260 ms · metadata changed · 74 tool(s), 159 resource(s), 0 resource template(s), 20 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http hasdata-mcp https://mcp.hasdata.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add hasdata-mcp --url https://mcp.hasdata.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable hasdata-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "hasdata-mcp": {
      "url": "https://mcp.hasdata.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "hasdata-mcp": {
      "type": "streamableHttp",
      "url": "https://mcp.hasdata.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start hasdata-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "hasdata-mcp": {
      "type": "http",
      "url": "https://mcp.hasdata.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http hasdata-mcp https://mcp.hasdata.com/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://mcp.hasdata.com/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "hasdata-mcp": {
      "serverUrl": "https://mcp.hasdata.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like HasData MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run HasData MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing