HasData
Server Details
Direct access to 60+ scraping and search tools. Extract structured data from Google (Search, Maps, Trends), Amazon, Airbnb, Social Media, and any web page directly into your AI agent.
- Status
- Healthy
- Uptime
- 74.2% over 59 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 68 tools
Tools are namespaced by data source and action (amazon_product_getProductDetails vs amazon_reviews_getProductReviews vs amazon_search_getSearchResults), and the search→detail→reviews pattern per source is easy to follow. Some overlap remains where sources collide: full vs light vs AI-mode Google SERP tools, the three SERP engines, and three hotel/travel providers (Airbnb, Booking, Google Hotels) require reading descriptions to choose correctly.
The dominant pattern is a clean snake_case namespace plus a camelCase verb_noun action (hasdata_<source>_<sub>_<action>), applied consistently across ~60 tools. Deviations exist: an autogenerated hash suffix in hasdata_google_serp_immersive_product_getImmersive_e29f691177, and a duplicated segment in hasdata_web_scraping_web_scraping_scrapeWebPage, which break the otherwise predictable scheme.
68 tools is very heavy for a single server, well past the threshold where an agent can comfortably select a tool. The breadth is partly justified by covering dozens of independent sources, but the surface is inflated by near-parallel families (Bing/DuckDuckGo/Google SERP, Google light/full/AI-mode SERP, Indeed/Glassdoor jobs, Zillow/Redfin, Airbnb/Booking/Google Hotels) that a smaller, more unified surface could serve.
Coverage of the scraping domain is strong and mostly follows a discover-then-enrich lifecycle (search → details, plus reviews/comments for commerce and social sources, and a universal web-scraper fallback for sites without a dedicated API). Gaps are minor: no YouTube comments or TikTok/Instagram video-detail tools despite links pointing at them, no Bing/DuckDuckGo companion detail calls, and no X/LinkedIn coverage, but none block core workflows.
Available Tools
68 toolshasdata_airbnb_listing_getAirbnbListingsairbnb_listing: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| pets | No | Number of pets. | |
| neLat | No | 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. | |
| neLng | No | North-east corner longitude of the map bounding box. | |
| swLat | No | South-west corner latitude of the map bounding box. | |
| swLng | No | South-west corner longitude of the map bounding box. | |
| adults | No | Number of adults. | |
| checkIn | Yes | The check-in date for the listings. | |
| infants | No | Number of infants. | |
| checkOut | No | The check-out date for the listings. | |
| children | No | Number of children. | |
| location | No | The location to search for listings. Required unless a full map bounding box (neLat, neLng, swLat, swLng) is provided. | |
| nextPageToken | No | The token used to retrieve the next page of results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, non-destructive, and open-world behavior, so the safety profile is covered. The description adds genuine value beyond annotations by disclosing pagination via nextPageToken and listing the returned fields (id/url, price per night and total, rating, reviews, coordinates, photos), which matters since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Lead sentence is front-loaded with the core action and search dimensions, followed by the return payload and use cases. Content is dense but each part contributes; no meaningful padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 12 parameters at full schema coverage, annotations covering safety, and no output schema, the description usefully compensates by enumerating return fields and pagination. It is essentially complete for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, including the location-vs-bounding-box interaction. The description adds only a high-level restatement of the search dimensions, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: searches Airbnb for available stays by location/bbox and date range. It is clearly a list/search operation, distinguishable from the sibling getAirbnbPropertyDetails (detail lookup). It does not name or contrast the sibling explicitly, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides domain use cases (travel planning, rental market analysis, pricing research, lead lists), which implies when the tool is valuable. However, it offers no when-not-to-use guidance and does not route the agent to the sibling details tool for single-property lookups. Use cases are present but routing guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_airbnb_property_getAirbnbPropertyDetailsairbnb_property: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the Airbnb listing. Must be a valid Airbnb listing URL. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds that this is a full-page fetch keyed by a valid listing URL, but discloses no rate limits, auth requirements, or edge-case behavior, so the marginal behavioral value is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then return contents, then use cases – a sensible order. The use-case list is slightly long and marketing-flavored, but each clause carries routing value, so it is efficient without being maximally tight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does list the major returned fields (title, location, rating, host, room/bed/bath, photos, amenities). It is complete enough to call correctly; only marginal items like error cases are absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single 'url' parameter is fully documented in the schema as needing a valid Airbnb listing URL. The description's 'by listing URL' phrasing is a restatement rather than added syntax or format guidance, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Fetches the full Airbnb property page by listing URL', then enumerates the returned fields. It also implicitly distinguishes itself from the listing-search sibling by describing this as enrichment of 'listings discovered via the listing-search endpoint'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear context is given through named use cases (travel planning, rate research, photo/amenity enrichment, compliance audits) and it references the listing-search endpoint as the discovery path. It does not state explicit when-not or failure conditions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_amazon_product_getProductDetailsamazon_product: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| asin | Yes | The Amazon Standard Identification Number (ASIN) of the product. | |
| domain | No | Amazon domain to use. Default is www.amazon.com. | |
| language | No | Optional Amazon language code. Supported values depend on the selected domain. | |
| deliveryZip | No | Postal code of the delivery location. | |
| otherSellers | No | 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 | No | The two-letter country code to define the country of the delivery address. Provide one exact documented value (238 allowed), e.g. `AU`, `CA`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/openWorldHint/destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: delivery-zone-aware pricing when a zip/location is set, and the fact that the other-sellers block only appears when otherSellers=true. It omits the credit cost (that lives only in the schema) and any rate-limit or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is front-loaded and the alternative/conditional notes come after. The long enumerated list of return fields and the use-case tail make the second paragraph dense, but since no output schema exists the field enumeration is largely earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates the returned fields (price, Buy Box seller, variants, offers block) and covers the main conditional behaviors, making it callable with confidence. It leaves out cost/credit implications for the extra request and any pagination or error handling, which are minor for a single-item fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes further by tying parameters to outcomes — the otherSellers=true flag producing the other-sellers offers block and the zip/location inputs enabling zone-aware pricing. That conditional linkage adds meaning beyond the flat field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Fetches a single Amazon product page by ASIN') plus the domain scope, which cleanly separates it from the sibling tools that fetch reviews, search results, or seller data. An agent can identify the tool's job without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names concrete scenarios (price/stock monitoring, catalog enrichment, listing QA, Buy Box tracking, cross-locale analysis) and flags the conditional otherSellers=true path, giving clear context for when to reach for it. It stops short of explicit exclusions or naming a sibling to prefer instead, so it does not reach a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_amazon_reviews_getProductReviewsamazon_reviews: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| asin | Yes | The Amazon Standard Identification Number (ASIN) of the product. | |
| page | No | The page number to retrieve. | |
| stars | No | The star ratings to filter reviews. | |
| domain | No | Amazon domain to use. Default is www.amazon.com. | |
| format | No | The format type to filter reviews. Include reviews of any product format/variant or specifically to the current format/variant. | |
| sortBy | No | The criterion to sort reviews. | |
| language | No | Optional Amazon language code. Supported values depend on the selected domain. | |
| mediaType | No | The media type to filter reviews. | |
| searchTerm | No | A term to search within the reviews. | |
| reviewerType | No | The type of reviewers to filter. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true and destructiveHint=false, and the description usefully adds that the fetch is paginated and enumerates the returned fields (title, body, stars, author, media URLs, rating histogram). It omits page-size limits, rate limits, and auth requirements, so it is above baseline but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is front-loaded with the action and scope before diving into filter and return-value detail, and the two sentences map well onto the tool's two concerns. The second sentence is quite dense and partly padding ('feeding review-summarization or Q&A agents'), but overall it earns its length for a 10-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by enumerating the returned review fields and the aggregate rating histogram, and it discloses pagination coverage. It lacks details on page-size behavior, maximum pages, or rate limiting, which are the remaining gaps for a network-bound external fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and 7 of 10 parameters are enums, so the schema already documents filter semantics fully. The description restates the filter families (star rating, reviewer type, media-only, format, keyword, sort) but adds no syntax, defaults, or interaction detail beyond the structured fields, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Get Amazon Product Reviews') and immediately scopes it to a single Amazon ASIN, which cleanly separates it from the sibling tools dealing with product details, search results, and sellers. An agent can identify the resource and granularity without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It lists concrete use cases (voice-of-customer analysis, sentiment extraction, competitor benchmarking, review-summarization agents) that make the intended context explicit. However, it never names an alternative tool or a condition under which a different sibling (e.g. product details) should be preferred, so routing guidance is incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_amazon_search_getSearchResultsamazon_search: GET /ARead-onlyInspect
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. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | The search term for which to get the search results. | |
| page | No | Page number for pagination (e.g., 1 for the first page, 2 for the second page, etc.). | |
| domain | No | Amazon domain to use. Default is www.amazon.com. | |
| sortBy | No | Parameter used for sorting results | |
| language | No | Optional Amazon language code. Supported values depend on the selected domain. | |
| deliveryZip | No | Postal code of the delivery location. | |
| shippingLocation | No | The two-letter country code to define the country of the delivery address. Provide one exact documented value (238 allowed), e.g. `AU`, `CA`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, openWorld, non-destructive), and the description adds real context beyond them: the returned fields (ASIN, price, list price, Prime/sponsored flags, position), pagination behavior, and location/zip scoping. It does not mention auth requirements, rate limits, or result caps, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose in the first sentence and the return shape in the second, with no filler. The second sentence is dense with field enumerations but each clause carries information; only slight trimming would improve it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by listing the returned fields, and it covers pagination, sorting, and location scoping for a seven-parameter tool. Auth/permission and result-limit details are absent, but for a read-only public search endpoint the definition is otherwise sufficient to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all seven parameters are already documented in the schema, including enums for domain, sortBy, and language. The description restates the sort options in human-readable form and mentions delivery scoping, but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (keyword search) and resource (Amazon results on a chosen domain) and enumerates the scope knobs (pagination, delivery location, sort order). The sibling set is all product/review/seller detail lookups, so the search-SERP framing clearly distinguishes this tool from them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly lists usage contexts: SERP monitoring, share-of-shelf tracking, competitor discovery, ASIN harvesting to feed the product/reviews endpoints, and price-comparison agents. The mention of feeding downstream product/reviews endpoints implicitly routes the agent away from this tool for detail lookups, but no explicit when-not-to-use statement is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_amazon_seller_getSellerDetailsamazon_seller: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Amazon domain to use. Default is www.amazon.com. | |
| language | No | Optional Amazon language code. Supported values depend on the selected domain. | |
| sellerId | Yes | The unique Amazon seller ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered structurally. The description adds useful behavioral context by characterizing the profile as 'public' and enumerating the returned fields (ratings breakdown, feedback counts, address, contact, customer service), though it omits auth requirements, rate limits, and pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the verb and resource, then supplies return detail and use cases in a logical order with no filler. The opening line duplicates the title, and the return-field inventory plus five-item use-case list push length, but each element is informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the enumerated return fields replace what an output schema would normally provide, and the annotations cover the safety profile. Three parameters at 100% coverage leaves nothing material about calling the tool unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both enums (domain, language) are self-documented with defaults and constraints. The description only restates sellerId and the domain/language selection, adding no format, range, or dependency detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Fetches') and resource ('public storefront profile for an Amazon seller') and identifies the key ('by sellerId') plus scope ('chosen domain/language'). This is clearly distinguishable from siblings like getProductDetails, getProductReviews, and getSellerProducts, so an agent can route without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete when-to-use scenarios (due-diligence/vetting, brand protection, MAP-violation investigations, leaderboards, directory enrichment), which is strong context. However, it never states when not to use it or names the natural alternative (getSellerProducts for listing a seller's catalog), leaving that inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_amazon_seller_products_getSellerProductsamazon_seller_products: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (e.g., 1 for the first page, 2 for the second page, etc.). | |
| domain | No | Amazon domain to use. Default is www.amazon.com. | |
| language | No | Optional Amazon language code. Supported values depend on the selected domain. | |
| sellerId | Yes | The unique Amazon seller ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds real value beyond them by disclosing pagination behavior and enumerating the returned row fields (ASIN, title, image, URL, price/list price, currency, rating, review count). It omits auth/prerequisite and rate-limit details, keeping it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core scoping sentence is front-loaded and dense with useful detail, and the use-case list is compact. The opening 'Get Amazon Seller Products' restates the title rather than adding information, which is minor waste but slightly dilutes an otherwise efficient structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by enumerating return fields, and it covers pagination and the domain/seller scoping. It does not explain how pagination terminates (total pages/next page) or output envelope, which would help since no output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so page, domain, language, and sellerId are all documented in the schema with enums for domain and language. The description only echoes sellerId and 'chosen domain' without adding format, default, or interaction detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (paginated listing of a seller's storefront catalog by sellerId/domain) and distinguishes it from neighbors by pointing to the product and reviews endpoints for per-ASIN drill-downs. An agent can tell it apart from getSellerDetails, getProductDetails, and getSearchResults without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit usage contexts (mapping a competitor's assortment, detecting SKU launches, building watchlists, price-intelligence, seeding deep-dives) and names the sibling endpoints for follow-up. It stops short of stating when NOT to use it (e.g., single-product or keyword lookups), so it is clear context rather than full when/when-not routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_bing_serp_getSearchResultsbing_serp: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Specify the search term for which you want to scrape the SERP. | |
| cc | No | The two-letter country code for the country to search from. | |
| lat | No | GPS latitude for the search origin. | |
| lon | No | GPS longitude for the search origin. | |
| mkt | No | The two-letter country code for the country to search from. | |
| first | No | 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. | |
| filters | No | Allows applying various filters to narrow search results, including date-based options: - `ex1:"ez1"` – past 24 hours - `ex1:"ez2"` – past week - `ex1:"ez3"` – past month For complex filters, run a Bing search and copy the filters parameter from the URL. | |
| setLang | No | 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 | No | 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 | No | Specify the device type for the search. | |
| safeSearch | No | Adult Content Filtering option. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, lowering the bar. The description adds genuine behavioral detail: the returned fields (title, url, snippet, displayed url, position) plus related searches, and the location/lat/lon precedence rule. It omits rate limits and rate/error behavior, keeping it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences: purpose first, then parameter scope, return contents, and use cases. Every clause earns its place and nothing is repeated or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by describing the return shape (organic results plus related searches). Annotations cover the safety profile and the schema covers all parameters, so the definition is nearly self-sufficient; minor gaps like pagination limits or proxy behavior are not covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3 and the schema does the heavy lifting. The description still adds value by grouping the 11 parameters into functional clusters (geo, market, country, safesearch, language, filters, device, pagination), which helps an agent reason about interactions even though the individual semantics live in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetches Bing SERPs for a query') and immediately enumerates the functional scope: geo targeting, market, country, safesearch, language, filters, device, and pagination. There are no sibling tools to disambiguate against, but the purpose is unambiguous and complete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear positive use cases ('SEO rank tracking, SERP feature monitoring, Bing-specific visibility audits, and training/eval data for search agents'). It gives strong context for when to reach for the tool, but offers no exclusions or alternatives (none exist among siblings), so it stops short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_booking_place_getBookingPlaceDetailsbooking_place: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full Booking.com URL of the property page. Only `booking.com` and `www.booking.com` hosts are accepted. | |
| rooms | Yes | Number of rooms to book. | |
| adults | Yes | Number of adult guests across all rooms. | |
| children | Yes | Number of child guests across all rooms (0–10). Pass `0` if there are no children. | |
| currency | No | 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 | No | Language of the Booking.com interface and localized fields in the response. | |
| checkInDate | Yes | Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`. | |
| checkOutDate | Yes | Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`. | |
| childrenAges | No | 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`. Example: `1,3,7` |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description adds real value by enumerating what is returned (identity, policies, price, rating, photos, room suites) and noting prices/availability are real-time, though it says nothing about auth, rate limits, or error cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening line 'Get Booking Hotel Details' merely restates the title and is wasted space. The remainder is a dense but informative sentence followed by a use-case list; it is not bloated, but the redundant lead-in and heavy enumeration keep it from being tightly front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of explaining return values, and it does so thoroughly (identity, policies, price, rating, photos, room suites). For a read-only detail endpoint it is essentially complete, missing only error/failure behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema. The description restates the stay-date and guest-composition inputs but adds no syntax, format, or constraint detail beyond what the schema already provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (fetches) and resource (a single Booking.com property by full URL), and explicitly distinguishes itself from the sibling search endpoint by describing this as the 'fetch full details after discovering the property URL via the Booking Search endpoint' step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives four concrete use cases (enrich listings, monitor a competitor, validate amenities/photos, fetch details after search) and names the discovery-then-detail workflow with the sibling tool. It lacks explicit when-not-to-use exclusions, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_booking_search_getBookingSearchResultsbooking_search: GET /ARead-onlyInspect
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. Pagination is page-based with 25 results per page; 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.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number of the search results. Booking.com returns 25 results per page; pass `2` for results 26–50, `3` for 51–75, etc. | |
| sort | No | Sort order applied by Booking.com to the results page. | |
| rooms | Yes | Number of rooms to book. | |
| adults | Yes | Number of adult guests across all rooms. | |
| keyword | Yes | Free-text destination query. Usually a city, region or neighborhood (e.g. `Paris`, `Manhattan, New York`); a specific property name is also accepted. | |
| meals__ | No | Filter by available meal plans. Multiple values are combined with OR. | |
| bedrooms | No | Minimum number of bedrooms in the property. | |
| children | Yes | Number of child guests across all rooms (0–10). Pass `0` if there are no children. | |
| currency | No | 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 | No | Language of the Booking.com interface and localized fields in the response. | |
| rating__ | No | Filter by official star rating. Multiple values are combined with OR. | |
| bathrooms | No | Minimum number of bathrooms in the property. | |
| price_max_ | No | 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_ | No | Minimum total price for the stay, in the requested `currency`. Must be `>= 10`. Required if `price[max]` is omitted. | |
| checkInDate | Yes | Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`. | |
| checkOutDate | Yes | Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`. | |
| childrenAges | No | 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`. Example: `1,3,7` | |
| facilities__ | No | Filter by property-level facilities. Multiple values are combined with OR. | |
| reviewScore__ | No | Filter by minimum guest review score bucket. Multiple values are combined with OR. | |
| travelGroup__ | No | Filter by travel-group oriented stay options. Multiple values are combined with OR. | |
| propertyType__ | No | Filter by property type. Multiple values are combined with OR. | |
| bedPreference__ | No | Filter by bed configuration. Multiple values are combined with OR. | |
| onlinePayment__ | No | Filter by online payment options. | |
| roomFacilities__ | No | Filter by in-room facilities. Multiple values are combined with OR. | |
| reservationPolicy__ | No | Filter by reservation flexibility. Multiple values are combined with OR. | |
| roomAccessibility__ | No | Filter by in-room accessibility features. Multiple values are combined with OR. | |
| distanceFromCenter__ | No | Filter by distance from the destination center. Multiple values are combined with OR. | |
| propertyAccessibility__ | No | Filter by property-level accessibility features. Multiple values are combined with OR. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, openWorldHint, destructiveHint=false), so the bar is lower. The description adds genuinely useful behavior beyond them: page-based pagination at 25 results/page, plus a detailed return-shape summary (price semantics, rating, policies, photo) that compensates for the absent output schema. It omits rate limits and auth requirements, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose in the opening line and wastes little, but the body is a single dense run-on sentence enumerating filters and return fields, some of which restate the schema. Efficient overall, with mild redundancy in the return-field list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 28-parameter search tool with no output schema, the description does the heavy lifting: it outlines the filter dimensions and describes the returned hotel fields, so an agent knows what comes back. Only operational details like error behavior or rate limits are missing, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 28 parameters including pagination, locale, price bounds and child ages. The description adds no syntax or constraint detail beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Searches Booking.com for accommodations') and enumerates the scope precisely (destination keyword, stay dates, guest composition, rich filter list, pagination, locale). It also names the sibling endpoint it feeds into (`hotelId`/URL into Booking Place), so an agent can distinguish search from place-details without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly names target scenarios (travel-planning agents, OTA price/inventory monitoring, competitor analysis, lead-gen) and routes to the sibling when full property details are needed. It stops short of stating exclusions or prerequisites (e.g. valid date/guest constraints beyond what the schema enforces), so it is clear context rather than a complete routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_chatgpt_chat_getChatgptAnswerchatgpt_chat: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | 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 | No | 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". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so safety is covered; the description goes well beyond that by disclosing statelessness (no memory of earlier requests), that language follows the prompt, that web search is conditionally triggered, and that every consulted source is returned with full metadata. This is meaningful behavioral context an agent needs to invoke it correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening sentence is a dense list of return fields, then usage guidance follows, so it is reasonably front-loaded and every sentence carries information. It is close to the upper bound of comfortable length for a two-parameter tool, costing a point against truly tight prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, yet the description fully specifies the return payload (answer, sources with metadata, links, title, model, search flag), plus behavior and usage. Nothing an agent needs to select or call the tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already fully documented in the schema (character limit, language behavior, IANA timezone framing). The description restates the language and timezone semantics but adds no syntax or format detail beyond what the structured fields already provide, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (send a prompt to ChatGPT, get the answer) and then enumerates exactly what comes back: markdown answer, web sources with domain/title/snippet/date/thumbnail, inline links, conversation title, model, and search flag. An agent can tell this is a prompt-to-answer Q&A tool rather than a SERP scraper without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete use cases (answer questions with cited sources, ground a RAG pipeline, summarise current events, build datasets) and a key constraint ('a fresh conversation with no memory of earlier ones'). It does not explicitly name the most obvious alternative, hasdata_perplexity_chat_getPerplexityAnswer, or state when not to use it, so it falls short of full when/when-not/alternatives guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_duckduckgo_serp_getSearchResultsduckduckgo_serp: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | 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 | No | 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 | No | 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 | No | 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 | No | Specify the device type for the search. | |
| safeSearch | No | Adult Content Filtering option. | |
| nextPageToken | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=true, openWorld=true, destructive=false, so the safety profile is covered. The description still adds real value beyond that: it discloses what the response contains (organic results, ads, Search Assist AI answer) and the pagination contract — the token is pre-signed, must be used as-is, cannot be constructed, and is absent when there are no more pages. Auth requirements and rate limits remain undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and scope are front-loaded in the first sentence, and the second sentence packs parameters and return shape compactly. The long parenthetical field list is informative rather than wasteful, though it pushes the description toward the verbose side for a fetch call.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing returns and does so by enumerating the result fields, ads, and AI answer. Combined with the seven fully documented parameters and the pagination caveat, an agent has enough to call this correctly; only operational details like auth and limits are absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every parameter, including that kl takes precedence over cc/setLang. The description's '(kl, or cc+setLang)' is only a light restatement of that precedence and adds no syntax or edge-case detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource ('Fetches DuckDuckGo SERPs for a query') and the platform qualifier immediately separates it from the Google/Bing SERP siblings. The enumeration of tuning knobs and returned data leaves no ambiguity about what the tool produces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Names four concrete use cases ('SEO rank tracking, SERP feature monitoring, DuckDuckGo-specific visibility audits, and training/eval data for search agents'), which gives clear context for when to reach for it. It stops short of naming an alternative (e.g. the Google or Bing SERP tools) or stating when-not to use it, so it doesn't reach the top band.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_facebook_profile_getFacebookProfilefacebook_profile: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | Yes | 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 | No | 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 | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, non-destructive, open-world). The description adds genuinely useful behavior: the feed is walked three posts per request via pagination.nextPageToken and each request is billed separately. It stops short of describing failure modes or rate limits, so a 4 rather than 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded, then return fields, then pagination, then use cases. The long comma-delimited enumeration of returned fields is dense but each item is informative; it borders on oversized but nothing is truly wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the full burden of explaining return values, and it does so thoroughly — listing all key fields, the nested post structure, and pagination semantics. An agent has everything needed to call and interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents handle formats, the language enum's effect on localized strings, and the pagination token. The description only restates the pagination walk, adding no syntax or edge-case detail beyond the schema. Baseline 3 applies when the schema carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Fetches a public Facebook page or profile by handle') and enumerates the concrete return contents (page id, name, category, likes, followers, posts). An agent knows exactly what it retrieves and at what granularity, with no ambiguity from a sibling set (none exist).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit use contexts — enrich company/creator records, verify brand reach and contact details before outreach, monitor competitors, build datasets. It does not name when *not* to use it, though the schema does note groups and private accounts are unsupported. Clear context, but no exclusion guidance in the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_glassdoor_job_getJobDetailsglassdoor_job: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the job vacancy to retrieve details for. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value beyond that by enumerating what the call returns (title, company, rating, location, salary estimate, posted date, description, qualifications/benefits), which is important given there is no output schema. It omits any note on auth, rate limits, or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core action and resource are front-loaded in the first two sentences, with the use-case list following. The five-item use-case enumeration is somewhat long but still earns its place by orienting downstream consumers; nothing is padded or redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, the description supplies both the input semantics (vacancy URL) and a solid enumeration of the returned fields, which is what an agent needs to decide to call it. It does not cover failure behavior or URL validation, leaving a small gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema coverage is 100%, so the schema already documents the required url field. The description's phrase 'by its vacancy URL' adds only a mild hint about the expected URL shape and nothing about format or validation, so this lands at the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetches a Glassdoor job posting by its vacancy URL') and names the returned entity precisely. It is clearly distinguishable from the sibling hasdata_glassdoor_listing_getJobListings, since this one operates on a single posting identified by URL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete contexts for use (ATS ingestion, job aggregators, comp benchmarking, company-profile enrichment, LLM matching/resume tailoring), which tells the agent when this tool is appropriate. It stops short of naming an alternative or stating exclusions, so it does not reach 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_glassdoor_listing_getJobListingsglassdoor_listing: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | The sorting option for the search results. | |
| domain | No | The domain of the Glassdoor site (optional). | |
| radius | No | 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 | Yes | The keyword used to search for job listings. | |
| location | Yes | The location to search for job listings. | |
| maxSalary | No | Upper bound of the yearly pay range, must be greater than `minSalary`. Can be used on its own. | |
| minRating | No | 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 | No | 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 | No | Returns only jobs posted within the given number of days. | |
| remoteOnly | No | Returns only remote jobs. Defaults to false. | |
| easyApplyOnly | No | Returns only jobs that can be applied to directly on Glassdoor. Defaults to false. | |
| nextPageToken | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context beyond annotations: it describes the returned job fields and notes that nextPageToken pagination preserves the original filters. It does not disclose rate limits or authentication requirements, but that is a minor gap given the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a direct statement of purpose, then moves through filters, return values, and use cases in a single efficient paragraph. It is slightly dense and could be better structured with bullet points, but every sentence carries relevant information and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter search tool with no output schema, the description is complete enough: it explains the search surface, the returned fields (title, company, location, salary estimate, posted date, job URL, jobId, page tokens), and the pagination behavior. Combined with annotations that cover safety and open-world scope, an agent has what it needs to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 12 parameters in detail. The description summarizes filter categories (date posted, distance, salary range, company rating, easy apply, remote), sort, domain, and pagination behavior, but adds little semantic detail beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Searches Glassdoor job listings by keyword and location') and enumerates supported filters and pagination. It also distinguishes itself from the sibling tool:'collect URLs for downstream full-detail scraping via the Glassdoor Job endpoint' points to the separate job-details endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear usage contexts ('build job feeds, monitor hiring trends for roles/companies/regions, power candidate sourcing tools') and identifies the downstream sibling for full-detail scraping. However, it does not explicitly state when not to use this tool or list alternatives beyond that one reference, so it stops short of the 5-level specificity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_images_images_getImageSearchResultsgoogle_images_images: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query term for retrieving image results. | |
| gl | No | 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 | No | 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 | No | Page number for paginated results, where 0 is the first page. | |
| tbs | No | `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: Image Size Filters: - `isz:l` - Search for large images. - `isz:m` - Search for medium images. - `isz:i` - Search for icon-sized images. - `isz:lt,islt:qsvga` - Filter for images larger than 400×300. - `isz:lt,islt:vga` - Filter for images larger than 640×480. - `isz:lt,islt:svga` - Filter for images larger than 800×600. - `isz:lt,islt:xga` - Filter for images larger than 1024×768. - `isz:lt,islt:2mp` - Filter for images larger than 1600×1200. - `isz:lt,islt:4mp` - Filter for images larger than 2272×1704. - `isz:ex,iszw:1000,iszh:1000` - Search for images exactly 1000×1000. Color Filters: - `ic:color` - Search for full-color images. - `ic:gray` - Search for black and white images. - `ic:specific,isc:red` (and other colors such as orange, yellow, green, etc.) - Search for images predominantly in specified colors. Image Type Filters: - `itp:face` - Search for images of faces. - `itp:photo` - Search for photographs. - `itp:clipart` - Search for clipart images. - `itp:lineart` - Search for line drawings. - `itp:animated` - Search for animated images (GIFs). | |
| safe | No | Adult Content Filtering option. | |
| uule | No | The encoded location parameter. | |
| domain | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. | |
| filter | No | 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. | |
| location | No | Google canonical location for the search. | |
| deviceType | No | Specify the device type for the search. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds useful behavior beyond that: page-based pagination via ijn and the exact shape of each returned image record. It omits operational caveats such as auth requirements, rate limits, or scraping failure modes, which keeps it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded in the first sentence, followed by capability detail and use cases. Both sentences carry information, though the multi-item use-case list is the most expendable element and could be trimmed without losing call-relevant guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter, single-required-argument scraper with no output schema, the description usefully summarizes the return record fields (title, source URL, image URL, thumbnail, dimensions, source name, position) and pagination. That covers the main gap left by the absent output schema; remaining gaps are operational rather than structural.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already carries full parameter documentation (including the exhaustive tbs filter syntax and enum values). The description's summary of filter categories and pagination maps onto parameters already documented and adds no syntax or default details, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource ('Get Image Search Results', 'Scrapes Google Images for a query') and enumerates both the filter dimensions and the returned fields. An agent knows exactly what operation this performs without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a concrete list of intended scenarios ('visual-asset discovery, reverse-image workflows, dataset collection for ML/CV training, brand/logo monitoring, stock-image sourcing'), which gives clear context for when to reach for it. It stops short of stating exclusions or prerequisites, and there are no sibling tools to route against.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_maps_contributor_reviews_getMapReviewsgoogle_maps_contributor_reviews: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| gl | No | 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 | No | 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 | No | Number of results per page, ranging from 10 to 200. | |
| contributorId | Yes | Google Maps Contributor ID. | |
| nextPageToken | No | Defines the next page token. It is used for retrieving the next page results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the pagination model (nextPageToken) and the per-review return shape (rating, text, date, place name/address, photos, owner responses), which is useful behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core purpose followed by return shape and use cases. Every sentence earns its place, though the return-field list is fairly dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description enumerates the returned per-review fields, compensating well. Combined with annotations covering the safety profile and the 100%-covered schema, an agent has enough to call this correctly; minor gaps remain around pagination termination behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already fully documented in the schema (gl, hl, num, contributorId, nextPageToken). The description restates language/country targeting and pagination in prose but adds no syntax or constraint detail beyond the schema, so the baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: lists Google Maps reviews authored by a specific Local Guide/contributor, keyed on contributorId. This clearly distinguishes it from the sibling hasdata_google_maps_reviews_getMapReviews, which returns reviews for a place rather than a contributor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage contexts (reviewer reputation checks, fake/bot detection, local-guide activity analysis, trust scoring). It gives clear when-to-use guidance but no explicit when-not or named alternative sibling to route against, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_maps_photos_getMapPhotosgoogle_maps_photos: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| hl | No | 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 | No | Google Maps data ID. Either dataId or placeId should be set. | |
| placeId | No | Unique reference to a place on Google Maps. Either dataId or placeId should be set. | |
| categoryId | No | Filters photos by category. | |
| nextPageToken | No | Token for fetching the next page of photos. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so safety is covered. The description adds genuine behavioral context beyond that: the result set is paginated via nextPageToken, filterable by categoryId, and each item carries an image URL plus thumbnail. Auth requirements and rate limits remain undisclosed, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, then mechanism, then use cases, in three tight sentences. The leading 'Get Place Photos' largely restates the title and is mildly redundant, but nothing else is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by stating what each returned photo contains, and it explains pagination and filtering. All parameters are optional and the mutual dataId/placeId requirement is handled by the schema, so little is missing; only error/edge behavior is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description usefully ties categoryId to filtering and nextPageToken to pagination, but adds no format or syntax detail beyond the schema's own parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (fetches) and resource (the photo gallery of a Google Maps place) plus the keying identifiers, so it is instantly distinguishable from siblings like getPlaceDetails, getMapReviews, and getMapPosts. An agent can tell what it returns (photos with image URL and thumbnail) without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete application scenarios (restaurant-menu extraction, venue/ambience audits, place detail pages, POI imagery sourcing) that make the intended use clear. However, it names no alternatives or exclusions, so an agent must infer when to prefer this over getPlaceDetails or getMapPosts rather than being routed explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_maps_place_getPlaceDetailsgoogle_maps_place: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| hl | No | 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 | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. | |
| placeId | Yes | A unique identifier for the place. This ID can be obtained from Google Maps search results. | |
| fetchWebResults | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuine behavioral context beyond that: the return payload composition and the fetchWebResults side effect ('extra request to Google and costs 5 credits on top of the base'), which an agent needs for cost-aware planning.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, followed by return contents and the fetchWebResults caveat. The long enumeration of returned fields is informative rather than padded, though it could be trimmed slightly; overall it is efficient and well-ordered.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by enumerating the returned fields in detail, including the webResults sub-shape, so an agent knows what comes back. Safety is covered by annotations; the only mild gap is that it does not state where placeId originates beyond the schema note.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so hl, domain, placeId and fetchWebResults are all documented in the schema itself. The description restates placeId-based lookup and localization and elaborates on what fetchWebResults yields, but adds no syntax or format detail beyond the schema, warranting the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource ('Fetches full Google Maps place data by placeId') and enumerates the returned fields, so the agent knows exactly what it retrieves. It does not explicitly contrast itself with the other *getPlaceDetails siblings (yelp, yellowpages, booking) or with performMapSearch, but the 'Google Maps place' scope is unambiguous from the name and text.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It offers a list of use cases (local SEO audits, POI enrichment, lead generation, competitor mapping), which implies when it is useful, but gives no explicit when-to-use vs alternatives and no exclusions. It never says to obtain placeId from performMapSearch first or to route review queries to getMapReviews, leaving sibling selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_maps_posts_getMapPostsgoogle_maps_posts: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| hl | No | 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 | No | Google Maps data ID. | |
| placeId | No | Unique reference to a place on a Google Map. Either dataId or placeId should be set. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds real value beyond that by disclosing the return shape (per-post title, description, image, posted_at, link, source/business name) in the absence of an output schema, and noting the dataId/placeId input flexibility, though it omits pagination or rate-limit behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core action and followed by the return fields and use cases. The use-case list is somewhat padded but each clause remains relevant; no significant waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by naming the per-post return fields, and it clarifies the input identifiers and language targeting. Complete enough for an agent to invoke it correctly, missing only finer operational details like limits or pagination.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all three parameters (hl, dataId, placeId) are already documented in the schema, including the 'either dataId or placeId' rule. The description merely restates 'by dataId or placeId, with language targeting' and adds no syntax or format detail, matching the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (Fetches) plus the resource (Google Maps Posts) and even enumerates the content type (offers, events, announcements, notices) fetched by dataId or placeId. It is clear enough to distinguish from most siblings, though it never explicitly contrasts itself with near-namesakes like google_maps_reviews or google_maps_place.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives intended scenarios ('small-business intelligence, local-marketing monitoring, competitor activity tracking'), which is genuine when-to-use guidance. However, it offers no exclusions and does not route the agent to an alternative (e.g., reviews tool for reviews), so the guidance remains implied rather than decisive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_maps_reviews_getMapReviewsgoogle_maps_reviews: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| hl | No | 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 | No | Google Maps data ID. | |
| sortBy | No | Parameter used for sorting and refining results. | |
| placeId | No | Unique reference to a place on a Google Map. Either dataId or placeId should be set. | |
| topicId | No | Defines the ID of the topic you want to use for filtering reviews. | |
| nextPageToken | No | Defines the next page token. It is used for retrieving the next page results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, non-destructive, and openWorld, so safety is covered. The description adds genuine behavioral context beyond that: it discloses pagination, the available sort modes, a topicId filter, and the per-review fields returned. It omits auth requirements and rate-limit behavior, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the verb and scope, then structured into retrieval behavior, returned fields, and use cases. The trailing list of use cases is somewhat long but each clause carries a distinct application, so waste is limited.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates the returned per-review fields (author, rating, text, dates, likes, owner response, photos, local-guide flag), which compensates for the missing output schema. The main gap is the absence of guidance on the dataId/placeId choice and pagination flow, but overall it is complete enough to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every parameter, including the sort enum and the dataId/placeId duality. The description restates the sort values, topicId, and language but adds no format, precedence, or pagination-token guidance beyond what the schema provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Paginated fetch of Google Maps reviews for a place by dataId or placeId') and names the scoping input keys. It implies a place-level scope that separates it from the contributor-reviews sibling, but never names that sibling or any other alternative explicitly, so differentiation relies on inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear usage contexts ('reputation management, sentiment and topic mining, competitor review benchmarking, feeding review data into summarization or trust-score LLMs'), which tells an agent when this tool fits. However it offers no when-not conditions and does not route to sibling tools like the contributor-reviews or place-details endpoints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_maps_search_performMapSearchgoogle_maps_search: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query term or phrase. | |
| gl | No | 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 | No | 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 | No | 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`. | |
| start | No | 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. | |
| domain | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds value by enumerating the exact result fields (placeId, rating, review count, price level, hours, etc.) and by noting that ll is required when start is present, though it says nothing about quotas, cost, or error behavior for what is an open-world scrape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with what the tool does before the field list and use cases. The long middle list of return fields is dense but each item is informative rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by listing the returned fields, and it covers the required query plus the optional location, language, domain, and pagination controls. It is slightly thin on the ll/start interaction detail (only partially echoed from the schema) and on rate-limit or auth expectations, but an agent has enough to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents q, gl, hl, ll, start, and domain in detail. The description only summarizes them ('language, country, domain, and offset-based pagination'), adding no format or constraint detail beyond the schema, which matches the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (runs a Google Maps search by keyword plus optional coordinates) and enumerates the returned local-pack fields. It also distinguishes itself from the Maps Place, Reviews, and Photos siblings by naming them as downstream consumers of the placeIds it returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage contexts (local lead generation, competitor density mapping, hyperlocal directories) and explains that placeIds feed the Maps Place/Reviews/Photos endpoints, which is genuine routing guidance. It never states when NOT to use this tool or how it compares to sibling search tools such as yelp_search or google_serp_serp, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_scholar_case_law_getScholarCaseLawOpiniongoogle_scholar_case_law: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| hl | No | 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 | Yes | The `caseId` of a Google Scholar case-law result, as returned by the google/scholar endpoint. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safe read-only, open-world profile; the description adds substantial value by enumerating what is returned (title, parties, court, dates, docket numbers, cited cases grouped with a ready-to-call hasdataLink), which is meaningful behavioral context absent from the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose in the first line, then supplies sourcing detail and use cases. It is slightly dense but every sentence carries information; nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates fully by describing the return payload, the single required parameter's origin, and the intended workflow, so an agent has everything needed to call and interpret the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the baseline is 3, but the description adds meaning beyond the schema by detailing where caseId comes from (asSdt court-scope searches and citedCases in other case-law results), which is more actionable than the schema's brief note.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Looks up a Google Scholar Case Law opinion by its caseId'), and ties the resource to the broader google/scholar organic-result and citedCases context so it is distinguishable from the search and citation sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear context for use ('build legal-research and case-law-analysis workflows, or walk a citation graph one cited case at a time') and explains where the required caseId originates, but does not explicitly name alternative siblings such as getScholarSearchResults or getScholarCitationFormats or state when-not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_scholar_cite_getScholarCitationFormatsgoogle_scholar_cite: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | The `resultId` of a Google Scholar organic result, as returned by the google/scholar endpoint. | |
| hl | No | 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`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare it is a safe read (readOnlyHint=true, destructiveHint=false), lowering the bar. The description still adds useful context: it operates on a single result, and enumerates the concrete outputs (MLA/APA/Chicago/Harvard/Vancouver plus BibTeX/EndNote/RefMan/RefWorks), which is behavior an agent cannot infer from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight paragraphs, front-loaded with the core action and followed by dependency and output detail. Every sentence carries operational value; nothing is padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only single-result lookup with no output schema, the description compensates by enumerating the returned citation formats and export links. Combined with annotations and full schema coverage, an agent has everything needed to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (q, hl) are fully documented in the schema, establishing the baseline of 3. The description restates that resultId comes from google/scholar, echoing rather than extending the schema text, so no uplift is warranted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Looks up citation formats and export links') scoped to a single Google Scholar organic result identified by resultId. This clearly distinguishes it from the sibling google_scholar_scholar_getScholarSearchResults, which produces the resultId this tool consumes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear when-to-use guidance ('build citation/bibliography features or complete a research workflow started with google/scholar') and names the upstream dependency that produces the required resultId. It stops short of explicitly naming the sibling alternative, but the dependency routing is enough to select it correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_scholar_scholar_getScholarSearchResultsgoogle_scholar_scholar: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query. Supports Google Scholar search helpers such as `author:` and `source:`. | |
| hl | No | 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 | No | 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 | No | Maximum number of results to return per page. | |
| asRr | No | Set to 1 to return review articles only, or 0 (default) to return all articles. | |
| safe | No | Adult content filtering option. | |
| asSdt | No | 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 | No | Set to 1 to exclude citations from the results, or 0 (default) to include them. | |
| asYhi | No | Return results published up to and including this year. | |
| asYlo | No | Return results published from this year onward. | |
| cites | No | Unique article ID to look up articles that cite it, as returned in a result's `citedBy.citesId`. | |
| start | No | Result offset for pagination, where 0 is the first result. | |
| filter | No | 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. | |
| scisbd | No | Sort results by date instead of relevance: 1 for abstracts only, 2 for everything. Omit for relevance sorting. | |
| cluster | No | Unique article ID to look up all indexed versions of that article, as returned in a result's `versions.clusterId`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint, so safety is covered. The description adds real value beyond them by disclosing the return shape (organic results with cited-by/related/versions links, caseHasdataLink for case-law results) and the asSdt court-code semantics, which annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Core purpose is front-loaded in the opening clause, followed by parameter coverage and return/use-case detail. The first sentence is a dense run-on enumerating many parameters, but each clause carries information rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter tool with no output schema, the description compensates by describing the result fields and the case-law link behavior, and annotations cover the safety profile. Coverage is strong; only the absence of an explicit alternative-selection rule against the cite sibling leaves a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes further by explaining parameter intent: cites/cluster as lookups keyed off returned IDs, asSdt court-code values (2006 all courts, 2003 Federal), review-article and citation-inclusion filters, and scisbd sort modes. This adds meaning beyond the schema text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (scrapes) and resource (Google Scholar search results) and immediately distinguishes the tool from its scholar siblings by calling out cited-by/all-versions lookups and routing case-law results onward. An agent can identify this as the general Scholar search entry point without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly lists when to use it (academic research, literature review automation, citation tracking, grounding research agents) and points to the sibling google/scholar-case-law flow for case law. It does not state when NOT to use it or contrast against hasdata_google_scholar_cite, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_ai_mode_getAiModeResponsegoogle_serp_ai_mode: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Specify the search term for which you want to scrape the SERP. | |
| gl | No | 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 | No | 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 | No | The encoded location parameter. | |
| location | No | Google canonical location for the search. | |
| continuable | No | Whether to continue an existing AI Mode conversation. | |
| subsequentRequestToken | No | Token used to continue a previous AI Mode request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, open-world, non-destructive behavior, lowering the disclosure burden. The description adds useful behavioral detail beyond annotations: it returns conversational response text, cited source links, subtopic breakdowns, and a subsequentRequestToken when continuable is set for multi-turn continuation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first two sentences are front-loaded and earn their place by specifying the operation and return fields. The remainder is an overlong, overlapping list of use cases and examples ('person/company data enrichment', 'lead enrichment, sales research, people search, and filling in contact/attribute gaps for CRM records') that bloats the definition without adding distinct decision value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description carries the return-value burden and mostly succeeds by naming the main response components. It does not cover error handling, authentication, or rate limits, but for a read-only scraping endpoint with fully documented parameters and clear safety annotations, this is close to complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining the relationship between continuable and subsequentRequestToken for multi-turn AI Mode continuation, though it does not expand on q, gl, hl, uule, or location.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get AI Mode SERP Results' and 'Captures Gemini-powered AI Mode answers from Google Search.' It clearly distinguishes the tool from generic Google SERP and AI Overview siblings by naming the AI Mode/Gemini conversational answer output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear usage contexts ('Use for next-gen search interfaces, AI-answer monitoring, citation tracking, content research agents...') and concrete examples like `Who is the CEO of HasData?`. It does not, however, name when-not-to-use it or explicitly route the agent to sibling alternatives such as ai_overview or regular SERP tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_ai_overview_getAiOverviewResponsegoogle_serp_ai_overview: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| pageToken | Yes | Token from `aiOverview` block in Google SERP API. Valid for 1 minute. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, so safety is covered; the description adds the lazy-loaded nature, the 1-minute token window, and the shape of the payload (answer text, source URLs, expanded subtopics). It does not describe failure behavior when the token expires, which is the one notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a short title line followed by a dense but purposeful paragraph; every sentence carries either mechanism, timing, or use case. Slightly verbose in the final list of use cases but not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly takes on the burden of describing the return payload, and it does so at a useful level of detail. A brief note on token-expiry failure handling would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema coverage is 100%, so the schema already documents pageToken fully. The description repeats the token's origin and 1-minute validity rather than adding format or edge-case detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (fetches) and resource (the lazy-loaded Google AI Overview block) and explains the mechanism (via a pageToken from Google SERP). An agent can distinguish this from hasdata_google_serp_serp_getSearchResults because the description frames it as a dependent follow-up rather than a primary search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly positions the tool as a follow-up call to Google SERP and names three concrete use cases (SEO AI-citation tracking, fact-checking, LLM grounding). No explicit 'do not use when' or named sibling alternative, but the context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_events_getEventInformationgoogle_serp_events: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| pageToken | Yes | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the safety profile (readOnly/openWorld/non-destructive), and the description adds real behavioral value beyond them: it enumerates the returned fields (venue, map link, ticket sources with official/unofficial flags, primary ticket link) and discloses a time-sensitive constraint — the token expires a few minutes after being minted, so it must be called promptly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action and then the source/expiry, with no filler. Slightly dense but each sentence carries information an agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so fully, plus the expiry constraint and the token's origin. Nothing essential for a correct single-parameter lookup is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the single parameter is already documented; baseline would be 3. The description earns above baseline by clarifying that the token can also be taken from the adjacent ready-to-call `hasdataLink`, a detail the schema does not mention.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Looks up a single Google event by the pageToken'. It also scopes the input to the `eventsResults` array of a `google/serp` response, differentiating it from the sibling search tools that return the SERP itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear context ('Use to enrich an events search result with full venue and ticketing information') and states the prerequisite source of the token. It implicitly excludes using it for what the SERP widget already shows inline, but never names an explicit alternative tool or a when-not condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_immersive_product_getImmersive_e29f691177google_serp_immersive_product: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| pageToken | Yes | Token for displaying more product info in the Google immersive pop-up, available in the Google Shopping API response as the `immersiveProductPageToken` property. | |
| moreStores | No | 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 | No | Token used to retrieve the next page of store results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, non-destructive, openWorld); the description adds real behavioral value by disclosing that moreStores raises the merchant count from the default 3–5 to ~13 and that the nextPageToken paginates stores. It stops short of describing rate limits or error behavior, so a 4 rather than 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action and expands the token context in the second sentence; the merchant-count and pagination notes are dense but relevant. The use-case list at the end is mildly padded but not wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so well: multi-store offers (merchant, price, shipping, URL), specs, images, ratings, and storesNextPageToken. Missing only failure modes or how much the token payload varies, but it is otherwise sufficient to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented in the schema, including the 3–5 vs ~13 store behavior that the description repeats. The description adds no format, constraints, or edge cases beyond what the schema states, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Expands the Google Shopping Immersive Product pop-up given an immersiveProductPageToken'), which is concrete and actionable. It implicitly distinguishes itself from the generic sibling getProductInformation by scoping to the immersive pop-up, but never names that sibling, so the differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'Use for price-comparison bots, merchant discovery, dropshipping research' list describes audiences/use cases rather than conditions for selecting this tool over alternatives like google_serp_shopping or google_serp_product. No when-not-to-use or prerequisite (e.g., where the token comes from) is stated beyond the token's origin.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_news_getGoogleNewsgoogle_serp_news: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Free-text query as used on news.google.com. Not allowed with `topicToken`, `storyToken`, or `publicationToken`. | |
| gl | No | 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 | No | 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 | No | Sort order for articles in a story. Use only with storyToken. | |
| storyToken | No | Token for a single news story cluster (the “Full coverage” page). | |
| topicToken | No | Token for a Google News topic such as World, Business, or Technology. Not allowed with `q`, `storyToken`, or `publicationToken`. | |
| sectionToken | No | Token for a sub-section under a topic, for example Business → Economy. Use only when `topicToken` or `publicationToken` is present. | |
| publicationToken | No | Token for a specific publisher such as CNN or BBC. Not allowed with `q`, `storyToken`, or `topicToken`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description adds genuinely new behavioral context by disclosing the return payload (title, snippet, source, published date, thumbnail, URL, navigation tokens) and the token-based mode switching, which annotations do not convey. It omits rate limits, pagination, and auth requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well front-loaded: the lead line names the resource before the retrieval-mode detail, and the use-case sentence is placed last. It is dense but each sentence (modes, return fields, use cases) carries distinct information; only the redundant opening echo of the name is mild waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter read tool with no output schema, the description covers the retrieval modes, the mutual-exclusion constraints among tokens, and the return contents, which is enough for an agent to invoke it correctly. Missing only secondary operational detail such as pagination or result limits, which is acceptable given rich schema coverage and safety annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3; the description adds a mode-selection framing by grouping the tokens into named retrieval strategies and clarifying that storyToken is a 'full-coverage cluster with sort by relevance/date' (explaining the so parameter's purpose). It repeats several schema examples rather than supplying new syntax, so it only modestly exceeds baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Retrieves') and resource ('Google News results') and enumerates the five retrieval modes (free-text query, topicToken, sectionToken, publicationToken, storyToken), making the scope concrete. However, it never names or contrasts with siblings like serp_getSearchResults for non-news web results, so an agent must infer the news-only boundary from the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly lists use cases ('news monitoring, brand/PR tracking, topical aggregators, publisher-specific feeds, and drilling into full story coverage'), giving clear triggering context. It stops short of when-NOT-to-use or naming an alternative sibling (e.g. general SERP search), so it does not reach the 5 bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_product_getProductInformationgoogle_serp_product: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| gl | No | 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 | No | 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 | No | The encoded location parameter. | |
| start | No | 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. This parameter is applicable only when `searchType=offers` is specified. For reviews pagination use `filter` parameter. | |
| domain | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. | |
| filter | No | 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: Offers filters: - `freeship:1`: Show only products with free shipping. - `ucond:1`: Show only used products. - `scoring:p`: Sort by base price. - `scoring:tp`: Sort by total price. - `scoring:cpd`: Sort by current promotion deals (special offers). - `scoring:mrd`: Sort by seller's rating. Reviews filters: - `rnum:{number}`: Number of results (100 is max). | |
| location | No | Google canonical location for the search. | |
| productId | Yes | The product ID to get results for. | |
| searchType | No | Parameter for fetching specific product information, such as 'offers', 'specs', or 'reviews'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description usefully notes that the returned payload varies with searchType and enumerates the returned fields, but adds no auth, rate-limit, or pagination caveats beyond what the schema's 'start' description already supplies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is three dense sentences that front-load the core action and then summarize inputs before closing with use cases. Every sentence contributes, though the parenthetical filter gloss in sentence one is slightly redundant with the schema and could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nine-parameter read tool with full schema coverage but no output schema, the description does the necessary work of describing the return payload (title, images, price, ratings, specs, merchant offers, review text) and its dependence on searchType. What remains thin is the absence of any guidance on failure/empty cases, but overall it is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 100%, the schema already documents all nine parameters thoroughly, including enum values and the filter grammar. The description echoes the searchType values and filter categories (free shipping, used-condition, sort options) but introduces no syntax or semantics beyond what the schema provides, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it 'pulls detailed product data from Google Shopping by productId,' which is a concrete scope. The 'by productId' phrasing implicitly distinguishes it from the search-oriented siblings like shopping_getSearchResults, but it never names those alternatives directly, so differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear usage context via concrete scenarios (price intelligence, catalog enrichment, review mining, competitor spec comparison, shopping assistants). However it offers no when-not conditions and never points the agent to a sibling tool, so selection between this and the shopping search tools is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_serp_getSearchResultsgoogle_serp_serp: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Specify the search term for which you want to scrape the SERP. | |
| gl | No | 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 | No | 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 | No | 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 | No | Google Cached Search Parameters ID. | |
| num | No | Number of results per page, ranging from 10 to 100. | |
| tbm | No | Specify the type of search. | |
| tbs | No | This parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters: - 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. - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest. - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query. - Sites with Images: `img:1` - Only show results from webpages that contain images. Quick Date Range (qdr): - `qdr:h` - Show results from the past hour. - `qdr:d` - Limit results to the past day. - `qdr:w` - Filter results from the week. - `qdr:m` - Display results from the past month. - `qdr:y` - Show results from the past year. - `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. These filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria. | |
| lsig | No | Additional Google Place ID. | |
| nfpr | No | 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. | |
| safe | No | Adult Content Filtering option. | |
| uule | No | The encoded location parameter. | |
| kgmid | No | Google Knowledge Graph ID. | |
| start | No | 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. For 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. | |
| domain | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. | |
| filter | No | 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. | |
| ludocid | No | The Google Place ID for a specific location. | |
| location | No | Google canonical location for the search. | |
| deviceType | No | Specify the device type for the search. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds genuine behavioral context beyond annotations: the full set of returned features (ads, knowledge graph, PAA, local pack, AI Overview pageToken) and the constraint that 'num' is capped at 10 without tbm. It does not cover rate limits or auth, but it goes well beyond the safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is front-loaded, but the body is one extremely long run-on sentence that packs features, parameters, use cases, and a long enrichment example list together. Every clause is informative, yet the density and example enumeration make it harder to parse than necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must describe return values — and it does, listing organic results, ads, knowledge graph, related searches, PAA, local pack, featured snippets, and AI Overview token. With all parameters documented in the schema, the definition is complete enough to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 19 parameters in detail. The description adds marginal value by grouping parameter capabilities (location/uule, gl, hl/lr, tbs filters, tbm verticals, offset/num) and noting the num/tbm interaction. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb+resource ('Get Google Search Results', 'Full-featured Google Search scraper') and enumerates the verticals and features it covers. It implicitly contrasts with lighter siblings via 'Full-featured', but never names an alternative tool (e.g., serp_light, bing_serp), so an agent must infer the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit use-case contexts — SEO rank tracking, keyword research, SERP-feature monitoring, competitor analysis, LLM grounding, and person/company enrichment with concrete example queries. However, it offers no when-not guidance or named alternative (e.g., use bing_serp or serp_light instead).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_serp_light_getSearchResultsgoogle_serp_serp_light: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Specify the search term for which you want to scrape the SERP. | |
| gl | No | 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 | No | 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 | No | 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 | No | Number of results per page, ranging from 10 to 100. | |
| tbs | No | This parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters: - 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. - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest. - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query. - Sites with Images: `img:1` - Only show results from webpages that contain images. Quick Date Range (qdr): - `qdr:h` - Show results from the past hour. - `qdr:d` - Limit results to the past day. - `qdr:w` - Filter results from the week. - `qdr:m` - Display results from the past month. - `qdr:y` - Show results from the past year. - `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. These filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria. | |
| safe | No | Adult Content Filtering option. | |
| uule | No | The encoded location parameter. | |
| start | No | 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. For 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. | |
| domain | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. | |
| filter | No | 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. | |
| location | No | Google canonical location for the search. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly, non-destructive, open-world), and the description layers on substantial extra context: the complete set of returned blocks, the blocks explicitly excluded from this layout, the num cap, and the performance/cost tradeoff. This is far beyond what the annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded and every sentence carries information (returned blocks, excluded blocks, parameters, use cases). It is dense and slightly run-on, but no sentence is filler, so it stays efficient for a tool of this complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing return values and does so thoroughly, enumerating every result block returned. Combined with full parameter coverage and explicit limitations, an agent has everything needed to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already fully documented, establishing a baseline of 3. The description summarizes the supported filters (gl, hl/lr, domain, safesearch, tbs with qdr/cdr, offset/num), but it introduces a discrepancy by stating 'num capped at 10' while the schema declares num ranges from 10 to 100, which could mislead an agent on pagination.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get Google Light Search Results') and immediately distinguishes itself from the full SERP API sibling by describing the lightweight no-JS layout and its cheaper/faster tradeoff. An agent can tell it apart from hasdata_google_serp_serp_getSearchResults without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly names intended use cases (high-volume keyword monitoring, bulk rank tracking, backlink discovery, AI Overview presence tracking) and, by listing the block types it does NOT serve (shopping, news, videos, jobs), implicitly signals when the full SERP API should be used instead. It stops short of naming the alternative tool explicitly or stating a hard when-not rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_shopping_getSearchResultsgoogle_serp_shopping: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Specify the search term for which you want to scrape the SERP. | |
| gl | No | 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 | No | 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 | No | This parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters: - 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. - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest. - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query. - Sites with Images: `img:1` - Only show results from webpages that contain images. Quick Date Range (qdr): - `qdr:h` - Show results from the past hour. - `qdr:d` - Limit results to the past day. - `qdr:w` - Filter results from the week. - `qdr:m` - Display results from the past month. - `qdr:y` - Show results from the past year. - `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. These filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria. | |
| uule | No | The encoded location parameter. | |
| start | No | 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. | |
| domain | No | Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`. | |
| shoprs | No | 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). To 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. To remove a filter, follow its specific `hasdata_link`. | |
| location | No | Google canonical location for the search. | |
| deviceType | No | Specify the device type for the search. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and destructiveHint, so the safety profile is covered. The description adds real behavioral value by enumerating the returned fields (title, price, merchant, rating, reviews, thumbnail, productId, immersiveProductPageToken) and explaining the filter-chip/hasdata_link refinement loop, which is not derivable from the schema. It does not mention auth or rate limits, keeping it at a 4.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action in sentence one and packs filter dims and return/usage context into sentence two with no filler. It is dense but every clause carries information, so it is appropriately sized rather than merely short.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 10 parameters, no output schema, but full annotation coverage, the description does the heavy lifting an agent needs: it enumerates the return payload and the downstream id/token handoffs. It leaves pagination mechanics and error behavior to the schema/annotations, which is acceptable given no output schema forces it to describe returns itself.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 10 parameters in detail. The description groups them ('location/uule, country/language/domain, time/date filters, device type, shoprs filter-helper IDs, and offset pagination') but adds no syntax or format meaning beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Scrapes Google Shopping listings for a query') and the scope of filters it accepts. It also distinguishes itself from adjacent tools by naming the Product API and Immersive Product API as consumers of its output. An agent can tell it apart from the generic serp_getSearchResults sibling by the explicit 'Shopping' vertical.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete when-to-use contexts ('e-commerce price tracking, catalog building, promotion discovery') and names alternatives, explaining that productIds feed the Product API and tokens feed the Immersive Product API for deeper data. It stops short of stating explicit exclusions (e.g. when to prefer the plain SERP instead), so it is clear context without full routing rules.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_serp_short_videos_getShortVideosSearchResultsgoogle_serp_short_videos: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query term for retrieving short videos results. | |
| cr | No | 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 | No | 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 | No | 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 | No | 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 | No | Google advanced search filters, combined with commas. For example: - `qdr:h`, `qdr:d`, `qdr:w`, `qdr:m`, `qdr:y` - Show videos from the past hour, day, week, month, or year. | |
| page | No | Page number for paginated results, where 0 is the first page. | |
| uule | No | The encoded location parameter. | |
| location | No | Google canonical location for the search. | |
| deviceType | No | Specify the device type for the search. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, non-destructive, open-world behavior, so the bar is lower. The description goes on to disclose the return surface (title, thumbnail, duration, source platform, channel, direct URL, platform video ID, profile handle) and the hasdataLinks follow-up capability, which is genuinely useful behavioral context. It omits rate limits and response envelope details, keeping it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is front-loaded with the core action, then output, then use cases — a logical progression with no filler sentences. Length is proportionate to a 10-parameter tool with no output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description takes on the burden of describing return fields, which it does thoroughly, and it covers the parameter envelope and intended use cases. An agent has everything needed to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 10 parameters in detail and the baseline is 3. The description groups them (location/uule, country gl/cr, language hl/lr, device type, page pagination, tbs filters), which adds light interpretive structure but does not clarify the gl-vs-cr or hl-vs-lr distinction beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource — scraping the Google Short Videos carousel (explicitly TikTok, YouTube Shorts, Instagram Reels) — which is concrete and distinguishable from the generic google_serp_serp_getSearchResults and platform-specific tiktok/youtube siblings. An agent can tell what this returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context for use (short-form content discovery, viral-trend monitoring, influencer research, cross-platform aggregation, sourcing clips for LLM summarization/embedding). It does not, however, state when NOT to use it or explicitly name alternatives such as the general SERP or TikTok search tools, so routing between overlapping siblings is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_travel_flights_deals_getGoogleFlightsDealsgoogle_travel_flights_deals: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Free-text trip description, from a bare place name to a full sentence: - **Destination**: `Tokyo` - **Type of trip**: `beach escape`, `weekend getaway in Europe` - **Season or event**: `I would like to see cherry blossom in Japan` When the query implies a time of year, Google dates it itself and reports the range in `searchInformation.dateRange`. | |
| gl | No | 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 | No | 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 | No | Flight type. Requires `arrivalId`. - `1` / `roundTrip` — round trip (default) - `2` / `oneWay` — one way A one-way deal carries no `returnDate` and no `tripLengthDays`. | |
| stops | No | 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. | |
| adults | No | Number of adults. Prices cover the whole party, so raising this raises every deal price. Passenger counts reprice rather than narrow the search, so they need no `arrivalId`. The whole party must not exceed 9. | |
| children | No | Number of children, priced at their own fare. Counts towards the limit of 9 passengers. | |
| currency | No | Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`. | |
| maxPrice | No | Maximum ticket price, inclusive. Requires `arrivalId`. Omitted, it is unbounded. Read in the currency of the request: `650` means 650 EUR when `currency` is `EUR`, and 650 USD by default. | |
| arrivalId | No | Pins the search to one destination instead of letting Google pick from the query. - **IATA code**: 3 uppercase letters, e.g. `NRT` for Tokyo Narita. - **Location kgmid**: starts with `/m/`, found in Wikidata under "Freebase ID", e.g. `/m/07dfk` for Tokyo. Required by every filter: `type`, `travelClass`, `stops`, `outboundDate`, `returnDate`, `travelDuration`, `tripLength`, `maxPrice`, `maxDuration`, `includeAirlines` and `excludeAirlines`. Without it Google drops them silently. | |
| returnDate | No | When to return, in the same exact-or-window spelling as `outboundDate`, which is required alongside it. Cannot be combined with `travelDuration` or `tripLength` — all three set the trip length. Ignored when `type` is `oneWay`. | |
| tripLength | No | Trip length in days. Requires `arrivalId`. Cannot be combined with `returnDate` or `travelDuration`. - **Exact**: `7` - **Range**: `5,10` — min first Pairs with `outboundDate` to limit the departure period. Ignored when `type` is `oneWay`. | |
| departureId | Yes | 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). One airport per search; city names are not accepted. | |
| maxDuration | No | Maximum flight duration in minutes — `1500` for 25 hours. Requires `arrivalId`. Omitted, it is unbounded. Applies to each leg, not to the round trip. Google 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. | |
| travelClass | No | 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. | |
| infantsOnLap | No | Number of infants on an adult's lap. Counts towards the limit of 9 passengers. Google prices a lap infant above one in its own seat — the opposite of how airlines usually charge. | |
| outboundDate | No | When to depart. Requires `arrivalId`. - **Exact date**: `2026-12-10` - **Window**: `2026-12-01,2026-12-10` — any day within it Omitted, Google picks the dates from the query, or from whatever is cheapest. | |
| infantsInSeat | No | Number of infants in their own seat. Counts towards the limit of 9 passengers. | |
| travelDuration | No | 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`. | |
| excludeAirlines | No | Drops these airlines from the deals. Requires `arrivalId`. Cannot be combined with `includeAirlines`. Takes the same values as `includeAirlines`. | |
| includeAirlines | No | Keeps only these airlines. Requires `arrivalId`. Cannot be combined with `excludeAirlines`. Comma-separated 2-character IATA codes (`AF`, `UA`, `B6`) and Google's alliances `STAR_ALLIANCE`, `SKYTEAM`, `ONEWORLD`. The two can be mixed. An airline that does not serve the route returns an empty `flightDeals` array, not an error. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds real behavioral context beyond that: which fields come back only for searches Google shaped itself (typical price, discount, destination photo), that a date range is derived from the query, and the breadth of filtering. It omits auth needs and any rate/limit behavior, so it doesn't reach 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core mechanism and origin-airport scoping are front-loaded, and the return-field enumeration follows. It is dense and somewhat long, but nearly every clause carries information an agent needs (conditional fields, derived date range, filter categories) rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 21-parameter tool with no output schema and no siblings, the description compensates well by enumerating the return payload fields and the conditional nature of some of them, plus an overview of the filter surface. What remains missing (auth, pagination/limits) is minor given the read-only annotation profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema documents all 21 parameters in depth, including the critical arrivalId dependency and filter interactions. The description only summarizes the filter categories (trip type, cabin class, stops, dates, trip length, price/duration ceilings, airlines, party size) without adding syntax or constraints beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get Google Flights Deals Results') and immediately explains the distinctive mechanism: a plain-language trip description becomes flight deals from one origin airport with Google choosing destinations and dates. There are no siblings to distinguish from, so this is as clear as it needs to be.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly names intended uses ('inspiration-driven travel search, seasonal and event-based fare discovery, deal alerting, and travel-content generation'), which tells the agent when this tool fits. No when-not or exclusion guidance, and there are no alternative tools to route against, so 4 is the ceiling here.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_travel_flights_getGoogleFlightsgoogle_travel_flights: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| gl | No | 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 | No | 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 | No | Number of carry-on bags per passenger. | |
| type | No | 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`. | |
| stops | No | Restrict the number of stops (layovers) in the flight itinerary. | |
| adults | No | Number of adult passengers (>= 1 if specified). | |
| sortBy | No | Sort the flight results based on price, departure time, arrival time, etc. | |
| children | No | Number of child passengers. | |
| currency | No | Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`. | |
| maxPrice | No | Maximum price limit for the flight search, in the selected currency. | |
| arrivalId | Yes | Specifies the arrival airport code (IATA) or location kgmid. - **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). - **Location kgmid**: A string starting with `/m/`, found in Wikidata under "Freebase ID" (e.g., `/m/02_286` for New York, NY). Multiple values can be separated by commas (e.g., `JFK,LGA,/m/0hptm`). | |
| deepSearch | No | Enable deep search. Returns the same results as Google Flights in a browser, but takes longer to respond. Default is `false`. | |
| returnDate | No | The return travel date in 'yyyy-MM-dd' format. Required when **type** is `roundTrip`. | |
| showHidden | No | Indicates whether to include hidden options in the results. | |
| departureId | Yes | Specifies the departure airport code (IATA) or location kgmid. - **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). - **Location kgmid**: A string starting with `/m/`, found in Wikidata under "Freebase ID" (e.g., `/m/02_286` for New York, NY). Multiple values can be separated by commas (e.g., `JFK,LGA,/m/0hptm`). | |
| maxDuration | No | The maximum total flight duration in minutes. | |
| returnTimes | No | Set up to 4 time boundaries (2 for departure, 2 for arrival) to filter return flights. Each number represents the start of an hour. Examples: - `6,20` → 6:00 AM - 9:00 PM departure - `1,15` → 1:00 AM - 4:00 PM departure - `7,18,2,21` → 7:00 AM - 9:00 PM departure, 2:00 AM - 10:00 PM arrival | |
| travelClass | No | The travel class for the flight (Economy, Premium Economy, Business, or First). | |
| bookingToken | No | Used to request booking options for selected flights. This token is found in the flight results and cannot be used with `departureToken`. | |
| infantsOnLap | No | Number of infants sitting on an adult's lap. | |
| outboundDate | Yes | The outbound travel date in 'yyyy-MM-dd' format. | |
| infantsInSeat | No | Number of infants occupying seats. | |
| lessEmissions | No | Prefer flight options with lower carbon emissions. | |
| multiCityJson | No | 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: - **departureId** – The departure airport code or location KGMID. Uses the same format as the main `departureId` parameter. - **arrivalId** – The arrival airport code or location KGMID. Uses the same format as the main `arrivalId` parameter. - **date** – The flight date. Uses the same format as the `outboundDate` parameter. - **times** *(optional)* – The time range for the flight. Uses the same format as the `outboundTimes` parameter. | |
| outboundTimes | No | Set up to 4 time boundaries (2 for departure, 2 for arrival) to filter flights. Each number represents the start of an hour. Examples: - `6,20` → 6:00 AM - 9:00 PM departure - `1,15` → 1:00 AM - 4:00 PM departure - `7,18,2,21` → 7:00 AM - 9:00 PM departure, 2:00 AM - 10:00 PM arrival | |
| departureToken | No | 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. | |
| excludeAirlines | No | 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. | |
| includeAirlines | No | 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. `excludeAirlines` and `includeAirlines` parameters can't be used together. | |
| layoverDuration | No | 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. | |
| excludeConnections | No | A comma separated list of specific airports to exclude as connections. | |
| includeConnections | No | A comma separated list of specific airports to allow as connections. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds valuable behavioral context beyond that: it details the return payload (price, duration, stops, legs, aircraft, CO2 emissions) and the token flow for round-trip/booking follow-ups, though it omits rate limits, auth, and pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with a clear purpose line followed by a dense but informative summary of inputs and outputs. The mega-sentence is long and the trailing use-case list is somewhat filler, but nothing is materially wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 31-parameter tool with no output schema, the description usefully compensates by describing the return structure and the departureToken/bookingToken follow-up flow. Required parameters and their formats are covered by the schema; only operational details like errors and rate limits are absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 31 parameters with enums and examples. The description's summary of the parameter space (passenger mix, class, bags, max price, sort, stops, airline filters, time windows, layover, deep search) adds framing but no syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Searches Google Flights for one-way, round-trip, or multi-city itineraries') and enumerates the concrete filtering scope, making it unmistakably distinct from the sibling deals and hotels tools. An agent can identify the tool's function without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The closing sentence lists intended audiences and scenarios ('travel-planning agents, fare monitoring, corporate travel dashboards, emission-aware trip optimization'), which implies usage but gives no conditions for choosing this tool over getGoogleFlightsDeals or getGoogleHotels. No explicit when-not or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_travel_hotels_getGoogleHotelsgoogle_travel_hotels: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | The search query for Google Hotels (e.g., a city, neighborhood, or hotel name). | |
| gl | No | 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 | No | 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 | No | Number of adult guests (1-6). | |
| brands | No | Comma-separated list of brand IDs to filter by. Brand IDs are returned in the response under `brands` for the same query. | |
| rating | No | 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 | |
| sortBy | No | Sort hotel results. Options: - `lowestPrice` — lowest price - `highestRating` — highest rating - `mostReviewed` — most reviewed | |
| bedrooms | No | Minimum number of bedrooms (vacation rentals only). | |
| children | No | Number of child guests (1-5). Total guests (adults + children) cannot exceed 6. | |
| currency | No | Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`. | |
| maxPrice | No | Maximum price per night, in the selected currency. | |
| minPrice | No | Minimum price per night, in the selected currency. | |
| amenity__ | No | 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. | |
| bathrooms | No | Minimum number of bathrooms (vacation rentals only). | |
| hotelClass | No | Comma-separated list of hotel star classes to include (e.g., `2,3,4,5`). | |
| checkInDate | Yes | The check-in date in 'yyyy-MM-dd' format. | |
| checkOutDate | Yes | The check-out date in 'yyyy-MM-dd' format. | |
| childrenAges | No | Comma-separated list of children ages (e.g., `5,8,12`). Must match the number of children. | |
| ecoCertified | No | Show only eco-certified properties. | |
| nextPageToken | No | Token to fetch the next page of hotel results. Returned in the `pagination` field of a previous response. | |
| propertyToken | No | Token used to retrieve details for a specific property. Returned in each property in the results. | |
| specialOffers | No | Show only properties with special offers. | |
| propertyType__ | No | 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. | |
| vacationRentals | No | Search vacation rentals instead of hotels. | |
| freeCancellation | No | Show only properties offering free cancellation. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds value by enumerating what the call actually returns (rates, price comparisons, reviews, images, deals, pagination tokens), which matters because no output schema exists; it still omits auth/rate-limit behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded in the first sentence, but the second sentence is a very long run-on enumeration of return fields. That inventory earns some of its length given the absence of an output schema, yet it is undifferentiated and would be more usable as a structured list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 25-parameter, no-output-schema tool, the description covers the filter surface, the hotel-vs-rental mode distinction, and the return payload inventory. Missing pieces are operational (auth, rate limits, pagination workflow) rather than selection-critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, including the hotel*/rental* prefix semantics and enum meanings. The description's category listing largely restates those fields without adding format or constraint detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('Searches Google Hotels for hotels and vacation rentals') and scopes it with check-in/check-out, guest mix, localization, and filter categories. It is unambiguous about what the tool does, though there are no sibling tools against which it must differentiate itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It lists target audiences ('travel research agents, hotel rate monitoring, OTA dashboards, and competitive analysis'), which implies usage context, but gives no explicit when-to-use/when-not guidance, no prerequisites, and no workflow hints (e.g., how to continue pagination or switch to vacation-rental mode).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_google_trends_search_getTrendsDatagoogle_trends_search: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Specify the search term for which you want to retrieve trends data. | |
| tz | No | 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. To calculate the `tz` value for a specific time zone, you can use the time difference between UTC +0 and the desired time zone. Examples: - `420`: Pacific Daylight Time (PDT) - `60`: Central European Time (CET) - `-540`: Japan Standard Time | |
| cat | No | Category of the search term. The default value is 0 ("All categories"). Provide one exact documented value (1133 allowed), e.g. `0`, `3`. | |
| geo | No | 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 | No | Defines a date range for the search. Available options: - `now 1-H`: Past hour - `now 4-H`: Past 4 hours - `now 1-d`: Past day - `now 7-d`: Past 7 days - `today 1-m`: Past 30 days - `today 3-m`: Past 90 days - `today 12-m`: Past 12 months - `today 5-y`: Past 5 years - `all`: 2004 - present You can also specify a custom date range using one of the following formats: - `yyyy-mm-dd yyyy-mm-dd` - (e.g. 2021-10-15 2022-05-25) for dates from 2004 to present. - `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. | |
| gprop | No | 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 | |
| region | No | 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. | |
| dataType | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds value beyond that by disclosing the return content (interest-over-time series, geo breakdowns, rising/top related topics/queries with relative scores), which matters because no output schema exists. Minor imprecision: it says "one or more queries" while relatedTopics/relatedQueries accept only a single query, though the schema corrects this.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is front-loaded with a short title line, followed by one dense capability sentence and one returns/use-case sentence. It is reasonably sized, though the capability enumeration partially duplicates what the 100%-covered schema already provides.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter tool with no output schema, the description covers both the input dimensions and the shape of the returned data, which is what an agent most needs. It leaves out return value ranges/normalization detail and any mention of rate limits or pagination, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents all 8 parameters with examples and enum meanings, setting the baseline at 3. The description only restates the parameter concepts at a high level (geo, region, date, category, tz, gprop, dataType) without adding syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ("Pulls Google Trends data") and enumerates the concrete capabilities (geo targeting, region granularity, date range, gprop, dataType) so the agent knows exactly what the tool produces. It doesn't explicitly differentiate from any sibling by name, but the Google Trends resource is unique within the sibling set, so confusion risk is low.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It offers a use-case list (keyword/content strategy, demand forecasting, seasonality analysis, topic discovery, campaign timing), which gives implied usage context. However, there is no when-not guidance, no prerequisites, and no routing to alternative tools, so the agent must infer selection on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_indeed_job_getJobDetailsindeed_job: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the job vacancy to retrieve details for. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds behavioral value by enumerating what is returned (title, company, location, salary, employment type, description, benefits) and noting it works on a single posting. No rate-limit or auth detail, but nothing contradicts the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, followed by return payload and use cases. Every sentence earns its place, though the use-case list is slightly long and not all items are equally informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and only one required parameter, the description carries the return-value burden itself and does so by enumerating returned fields. Nothing an agent needs in order to call this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter, giving a baseline of 3. The description goes beyond the generic schema text ('URL of the job vacancy') by specifying it must be a 'viewjob URL', which constrains the expected input format meaningfully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Fetches a single Indeed job posting by its viewjob URL') and explicitly distinguishes itself from the sibling listing endpoint. An agent can tell it apart from hasdata_indeed_listing_getJobListings and hasdata_glassdoor_job_getJobDetails without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage contexts (ATS/CRM enrichment, compensation benchmarking, resume-to-JD matching, archival) and names the Listing endpoint as the discovery counterpart. It doesn't state exclusions or prerequisites, but the context is clear enough to select the tool correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_indeed_listing_getJobListingsindeed_listing: GET /ARead-onlyInspect
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, and offset-based pagination (start). 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.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | The sorting option for the search results. | |
| start | No | The starting index of the results to retrieve (optional). | |
| domain | No | The domain of the Indeed site (optional). Provide one exact documented value (62 allowed), e.g. `ar.indeed.com`, `au.indeed.com`. | |
| keyword | Yes | The keyword used to search for job listings. | |
| location | Yes | The location to search for job listings. | |
| datePosted | No | Returns only jobs posted within the given number of days. | |
| remoteType | No | 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 | No | When enabled, the request is made in a way that returns more sponsored listings. Defaults to false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only/open-world, and the description layers on genuinely useful behavior: the returned field set, the warning that jobKey is the only reliable dedup key for sponsored postings, and the sponsoredOnly quirk where requests exit from the domain's country (Canadian results served as sponsored). These are non-obvious traits not derivable from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded paragraph that leads with purpose then progresses through filters, return shape, edge cases, and use cases. Dense but each clause carries information; slight overload on return-field enumeration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description correctly compensates by listing the returned job fields and the stable jobKey. For an 8-parameter read tool with full annotation coverage, no call-critical information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds real semantic value beyond the schema: it clarifies jobKey's dedup role and the sponsoredOnly country-domain behavior. The remoteType country-vs-city nuance largely restates the schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource ('Searches Indeed job listings by keyword and location') and enumerates the filter scope. It also distinguishes itself from the sibling hasdata_indeed_job_getJobDetails by framing its output as URL lists to feed into the Indeed Job endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete application contexts (job-market dashboards, hiring-trend analysis, sourcing pipelines, URL-list generation for the Job endpoint). Clear when-to-use, but no explicit exclusions or statement of when the sibling detail endpoint should be preferred instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_instagram_comments_getInstagramCommentsinstagram_comments: GET /ARead-onlyInspect
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, 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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | 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 | No | 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 | No | Defines the next page token. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/openWorld annotations by disclosing pagination mechanics: the first page returns the full post plus initial comments while later pages return comments only, server-side page sizing of ~10-15 comments, and nextPageToken handling. It also notes includeMusic triggers an extra upstream request and is ignored when nextPageToken is set.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose in the first sentence, then layers pagination and return-shape detail. It is dense, and the long parenthetical enumerating every post field is heavy, but that content earns its place because there is no output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the full burden of describing return values and does so thoroughly: post fields, carousel childPosts, comment fields (text, timestamp, likes, replies, owner with hasdataLink), and music fields. Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds beyond it by enumerating accepted URL forms (/p/, /reel/, /tv/, with or without the username segment) and clarifying the interaction between includeMusic and nextPageToken. Most other parameter detail is already in the schema, so it is not fully additive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetches the comments on a public Instagram post or reel from its URL'), and its scope clearly separates it from sibling tools like getInstagramPosts and profile endpoints. An agent can immediately tell this returns comments rather than posts or profiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete use cases (sentiment analysis, engagement research, comment datasets) and explicitly routes the agent from the posts API, whose items carry a hasdataLink to this endpoint. It does not state when to avoid the tool or name a competing comments source, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_instagram_posts_getInstagramPostsinstagram_posts: GET /ARead-onlyInspect
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, play counts on videos and Reels, image and video URLs, and timestamp. 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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | The maximum number of posts to retrieve per request. Defaults to 12. | |
| handle | Yes | The Instagram username of the account whose posts you want to scrape, without the `@` symbol. | |
| nextPageToken | No | Defines the next page token. It is used for retrieving the next page results. Use the `nextPageToken` value returned by the previous response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint=true, destructiveHint=false, openWorldHint=true), and the description still adds meaningful behavior: token-based pagination via nextPageToken to walk older posts, and that private/nonexistent/hidden handles return an error field instead of posts. No rate limits or result-cap behavior are mentioned, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose, then return fields, then pagination, then error behavior, then use cases — a sensible ordering with little waste. The field enumeration is long but justified given there is no output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so by listing caption, hashtags, mentions, engagement counts, video/Reels play counts, media URLs, and timestamps. Combined with pagination semantics and error behavior for private accounts, nothing an agent needs to call this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each of the three parameters is already documented with its own description. The description adds only a light gloss on pagination ('walk older posts'); it adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetches the latest posts of a public Instagram account by username') and enumerates the returned fields, which cleanly separates it from sibling tools like instagram_profile and instagram_comments. An agent can tell what this returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete use cases ('monitor competitor content, track engagement of creator posts, or build datasets... for vetting and analytics'), which is clear when-to-use context. It does not, however, name alternative tools or state when not to use it (e.g., profile metadata or comments go to sibling tools).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_instagram_profile_getInstagramProfileinstagram_profile: GET /ARead-onlyInspect
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. Use to enrich CRM/lead records, verify influencer reach before outreach, monitor competitor accounts, or build datasets of creator metadata for vetting and analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | Yes | The Instagram username of the profile you want to scrape, without the `@` symbol. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the low-level safety profile is covered. The description adds the meaningful constraint that only *public* profiles are fetched and enumerates the returned fields, which goes beyond the annotations, but it says nothing about rate limits, failures on missing/private handles, or freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the operation and its return payload, followed by use cases. The use-case list is somewhat expansive but each item is a plausible agent routing cue, so little is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with rich annotations but no output schema, the description covers purpose, scope, and return shape, which is most of what an agent needs. Minor gaps (behavior on invalid/private handles) are tolerable given the simplicity and annotation coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single handle parameter is already documented in the schema, including the no-@-symbol requirement. The description only restates 'by username (handle)' and adds no new syntax or format meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Fetches) and resource (public Instagram profile by username) and lists exactly what the response contains (full name, bio, link, picture, follower/following counts, verified/private flags). This clearly separates it from content-oriented siblings like instagram_posts and instagram_comments, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete usage contexts (CRM enrichment, influencer vetting, competitor monitoring, dataset building) that tell the agent when this tool is appropriate. It offers no exclusions or named alternatives (e.g. TikTok/Facebook profile tools), so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_perplexity_chat_getPerplexityAnswerperplexity_chat: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | 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 | No | 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". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the safety profile (readOnly/openWorld/non-destructive); the description adds genuinely new behaviour — it runs anonymously, always performs a web search (usedWebSearch normally true), returns sources instead of relying on the model alone, each request is a fresh thread with no memory, and answer language follows the prompt. That is substantial context beyond structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action and return shape, and every sentence carries information — the enumeration of return fields is justified because there is no output schema. The single dense paragraph is slightly run-on but not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by naming every returned field and its structure, and it covers statelessness, language behaviour and timezone framing. An agent has everything needed to invoke and interpret the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already fully documented in the schema, and the description largely restates them (language follows the question, timezone sets the current date for 'today'/'latest'). No additional syntax or edge-case meaning is added, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — sends a question to Perplexity and returns the answer plus sources, related questions, thread URL, model and country. It clearly distinguishes itself from the many SERP/scraper siblings by naming Perplexity and its cited-source output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use cases (cited Q&A, grounding an agent/RAG pipeline in live web results, topic summarisation with sources, building answer+citation datasets) plus the statelessness caveat. It stops short of naming a sibling alternative (e.g. chatgpt_chat_getChatgptAnswer) or when-not-to-use conditions, so 4 rather than 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_redfin_listing_getRealEstateListingsredfin_listing: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | The page number of the results to retrieve. | |
| sort | No | The sorting option for the search results. | |
| type | Yes | The type of listing. | |
| baths | No | The minimum number of bathrooms. | |
| pets__ | No | An array of pet types allowed. | |
| keyword | Yes | 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_ | No | The maximum number of bedrooms. | |
| beds_min_ | No | The minimum number of bedrooms. | |
| cost_hoa_ | No | The maximum monthly Homeowners Association (HOA) fee. | |
| moveInDate | No | The desired move-in date in MM/DD/YYYY format. | |
| price_max_ | No | The maximum price of the listing. | |
| price_min_ | No | The minimum price of the listing. | |
| homeTypes__ | No | An array of home types to filter the listings. Allowed values depend on the listing `type`. | |
| lotSize_max_ | No | The maximum lot size. | |
| lotSize_min_ | No | The minimum lot size. | |
| stories_max_ | No | The maximum number of stories. | |
| stories_min_ | No | The minimum number of stories. | |
| timeOnRedfin | No | How long the listing has been on Redfin. | |
| yearBuilt_max_ | No | The maximum year the property was built. | |
| yearBuilt_min_ | No | The minimum year the property was built. | |
| statusOptions__ | No | An array of listing statuses. | |
| soldWithinOption | No | Filter sold listings by how recently they were sold. | |
| rentalAmenities__ | No | An array of rental amenities to filter the listings. | |
| cost_priceReduced_ | No | Filter listings by when the price was reduced. | |
| rentalOtherTerms__ | No | An array of additional rental terms. | |
| monthlyPayment_max_ | No | The maximum monthly payment. | |
| monthlyPayment_min_ | No | The minimum monthly payment. | |
| schools_schoolType___ | No | An array of school types. | |
| forSaleSquareFeet_max_ | No | The maximum square footage for for-sale listings. | |
| forSaleSquareFeet_min_ | No | The minimum square footage for for-sale listings. | |
| homeFeatures_basement_ | No | The basement type. | |
| homeFeatures_poolType_ | No | The type of pool. | |
| cost_acceptedFinancing_ | No | The accepted financing type. | |
| cost_excludeLandLeases_ | No | If set to true, listings with land leases will be excluded. | |
| cost_pricePerSqft__max_ | No | The maximum price per square foot. | |
| cost_pricePerSqft__min_ | No | The minimum price per square foot. | |
| homeFeatures_options___ | No | An array of home feature flags to filter the listings. | |
| listingType_category___ | No | An array of listing categories. | |
| onlyWithDealOrPromotion | No | If set to true, only listings with a deal or promotion will be included. | |
| exclude55PlusCommunities | No | If set to true, 55+ communities will be excluded. | |
| forRentSquareFootage_max_ | No | The maximum square footage for for-rent listings. | |
| forRentSquareFootage_min_ | No | The minimum square footage for for-rent listings. | |
| schools_greatSchoolRating_ | No | The minimum GreatSchools rating (1-10). | |
| transportScores_bikeScore_ | No | The minimum bike score (1-100). | |
| transportScores_walkScore_ | No | The minimum walk score (1-100). | |
| cost_maxPropertyTaxPerYear_ | No | The maximum property tax per year. | |
| homeFeatures_keywordSearch_ | No | A free-text keyword search applied to listing descriptions. | |
| openHouseAndTour_openHouse_ | No | Filter listings with an open house. | |
| openHouseAndTour_videoTour_ | No | If set to true, only listings with a video tour will be included. | |
| homeFeatures_garageSpotsMin_ | No | The minimum number of garage spots. | |
| monthlyPayment_interestRate_ | No | The mortgage interest rate (percent) used to calculate the monthly payment. | |
| monthlyPayment_mortgageTerm_ | No | The mortgage term used to calculate the monthly payment. | |
| monthlyPayment_insuranceRate_ | No | The home insurance rate (percent) used to calculate the monthly payment. | |
| transportScores_transitScore_ | No | The minimum transit score (1-100). | |
| listingType_excludeShortSales_ | No | If set to true, short sales will be excluded. | |
| schools_includeUnratedSchools_ | No | If set to true, unrated schools will be included. | |
| listingType_redfinListingsOnly_ | No | If set to true, only Redfin-listed properties will be included. | |
| monthlyPayment_downPaymentAmount_ | No | The down payment as an absolute amount. | |
| monthlyPayment_downPaymentPercent_ | No | The down payment as a percentage of the home price. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds genuinely non-obvious behavior: results are paginated, and a street-address or building-name input collapses to a single property card where the `type` parameter no longer applies. Auth and rate-limit behavior are not mentioned, which keeps it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the operation and mode, then details. The return-field enumeration is long, but it substitutes for a missing output schema, so it earns its space. Slight density, but no redundant sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 59-parameter, no-output-schema tool, the description covers purpose, input modes, result-shape variation, returned fields, and the sibling relationship. Nothing essential to a correct call is left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already spells out every filter and enum, so baseline is 3. The description earns above baseline by documenting a semantic rule the schema never states: that required `type` is ignored for address/building searches, plus the set of location formats `keyword` truly accepts.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource (search for-sale/for-rent/sold Redfin listings) and its scope (pagination, location input forms). It explicitly distinguishes itself from the sibling by noting that deep-dive details come from the Redfin Property endpoint, so an agent can route without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete use cases (market research, agent lead gen, price/DOM trend analysis) and names the downstream alternative for detail lookups. It also flags the special case where an address/building input returns a single card rather than a list. It stops short of an explicit 'use X instead when Y' exclusion statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_redfin_property_getPropertyDetailsredfin_property: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the property on Redfin. Must be a valid Redfin property URL. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, covering the safety profile. The description adds that it fetches the full page for a given URL and lists the payload contents, but says nothing about auth requirements, rate limits, or failure modes for invalid URLs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action in the first sentence and keeps the payload enumeration and use cases compact. The field list is long but each item is a distinct returned attribute, so it earns its place; only marginal trimming would improve it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description carries the burden of describing returns, and it does so thoroughly via the field enumeration. For a read-only, single-parameter fetch the coverage is solid; only the lack of any error/edge-case guidance keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With a single parameter at 100% schema description coverage, the schema fully documents the required url. The description reinforces that the input is a Redfin property URL and must be valid, but adds no format examples or error behavior beyond the schema, so it stays at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (fetch the full Redfin property page by URL) and enumerates the returned data, so the agent knows exactly what it gets. It is clearly distinguishable from the sibling listing-search tool, which returns listings rather than a single URL-addressable property.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names concrete usage contexts (CMA reports, investor due-diligence, valuation models, listing enrichment, buyer-assistant agents), which tells the agent when this tool is the right fit. However, it never states when NOT to use it or names the sibling listing tool as the alternative for discovery-style queries, so routing is left partly to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_shopify_collections_getCollectionsshopify_collections: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the Shopify store. For example, 'https://b2bdemoexperience.myshopify.com'. | |
| page | No | The page number of the results to retrieve. Must be a positive integer. | |
| limit | No | The maximum number of collections to retrieve. Must be between 1 and 250. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds genuinely new behavioral context: public (non-authenticated) storefronts, limit up to 250, page-based pagination, and an enumeration of returned fields. It omits rate-limit and error/empty-result behavior, which keeps it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action, then return shape, then usage routing — every sentence earns its place. The opening heading line 'Get Shopify Store Collections' is mild duplication of the title, which keeps it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description's enumeration of returned fields (id, title, handle, description, image, timestamps) is important and present, as is pagination and limit behavior. Rate limits, auth assumptions, and failure modes are absent, but for a read-only listing tool with annotations the definition is nearly sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so url, page, and limit are already documented with examples and ranges. The description only clarifies that the storefront must be public, which is marginal added meaning. Baseline 3 applies when the schema carries the parameter burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Lists collections from any public Shopify storefront URL') and scopes the domain ('public storefront'). It explicitly names the sibling product endpoint as the downstream consumer of the handles it returns, so an agent can distinguish the two tools without reading either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete when-to-use context: enumerating category-specific catalogs via the Products endpoint, mapping a competitor's merchandising taxonomy, and tracking collection changes over time. It does not state when *not* to use this tool or what conditions would favor an alternative for the same task, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_shopify_products_getProductsshopify_products: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the Shopify store. For example, 'https://b2bdemoexperience.myshopify.com'. | |
| page | No | The page number of the results to retrieve. Must be a positive integer. | |
| limit | No | The maximum number of products to retrieve. Must be between 1 and 250. | |
| collection | No | The handle of the collection to filter the products. Provide the collection handle as a string. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavioral detail beyond that: pagination, a limit cap of 250, and an itemized list of returned fields (variants with prices/SKUs/inventory status, timestamps), which matters because no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action and scope, and each sentence contributes (scope, return shape, use cases). The scenario list is slightly long but no sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with no output schema, the description compensates well by describing the returned fields, pagination and limit cap, and by listing use cases. Nothing critical to correct invocation appears to be missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents url, page, limit and collection. The description reinforces limit (up to 250) and collection filtering but adds no syntax or format detail beyond the schema, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get/Pulls) and resource (Shopify Store Products) and clearly scopes it to 'any public Shopify storefront URL' with optional collection filtering. An agent can distinguish it from the sibling hasdata_shopify_collections_getCollections (products vs collections) without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The closing sentence enumerates concrete scenarios (price monitoring, catalog mirroring, availability tracking, SKU datasets) that tell the agent when this tool is appropriate. It stops short of naming alternatives or exclusion conditions, so it is clear context without explicit when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_tiktok_comments_getTikTokCommentstiktok_comments: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| videoId | Yes | The numeric id of the video (the number after `/video/` in a TikTok URL). | |
| commentId | No | When provided, returns the replies to this comment instead of the video's top-level comments. | |
| nextPageToken | No | Defines the next page token. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds genuinely useful behavioral detail beyond that: token-based pagination via nextPageToken and the fact that only the first page of top-level comments returns the `post` object. It does not mention rate limits or auth requirements, keeping it at a 4 rather than 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded paragraph that opens with the core purpose and then layers in return fields and pagination. It is efficient and wastes little, though the dense enumeration of returned fields is longer than strictly necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must carry the return-value burden, and it does: it enumerates comment fields (text, likes, timestamp, reply count, author details, links) plus the post metadata on the first page. Combined with pagination guidance, an agent has everything needed to call and interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents videoId, commentId, and nextPageToken. The prose restates their behavior (numeric video id, replies switch, next-page token) but adds no syntax or format detail the schema lacks, matching the baseline 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetches the comments on a public TikTok video') and explicitly distinguishes two operating modes: top-level comments by videoId vs. replies to a comment when commentId is given. This cleanly separates it from siblings like tiktok_posts and tiktok_search without requiring schema inspection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear usage contexts ('sentiment analysis, engagement research, building comment datasets') and points to the posts/search APIs as the upstream way to discover a video. It lacks an explicit when-not or alternative-selection rule (there is no tiktok-comments sibling to route against), so it falls short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_tiktok_posts_getTikTokPoststiktok_posts: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | Yes | The TikTok username of the account whose videos you want to scrape, with or without the `@` symbol. | |
| nextPageToken | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, openWorld, non-destructive), but the description adds substantive behavior: results come in pages of ~30, a nextPageToken is returned and must be looped to walk history, and the account must be public. It omits rate limits, auth requirements, and failure modes, keeping it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core verb and scope are front-loaded, and the pagination mechanic follows logically. The enumeration of returned fields (likes/comments/shares/plays/collects, cover and playable URLs, music, duration, timestamp) is slightly list-heavy but earns its place given there is no output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly carries the burden of describing return values and the pagination contract, which it does thoroughly. It lacks edge-case context (empty/private accounts, rate limits), so it is strong but not exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (handle, nextPageToken) are already fully documented in the schema, including the @ optionality and the first-page omit behavior. The description restates handle and the token but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource (fetch a page of videos for a public TikTok account by handle) and enumerates the returned fields, so the agent knows exactly what the tool produces. It does not explicitly name or contrast the nearby siblings (tiktok_profile, tiktok_search, tiktok_comments), so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete use cases (monitor competitor content, track creator engagement, build vetting/analytics datasets) and explains the pagination walk via nextPageToken, which is real guidance. It stops short of stating when NOT to use it or pointing to the profile/search alternative for other intents.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_tiktok_profile_getTikTokProfiletiktok_profile: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | Yes | The TikTok username of the profile you want to scrape, with or without the `@` symbol. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds the meaningful constraint that only public profiles are fetched and discloses the returned data surface, though it says nothing about auth needs, rate limits, or behavior on missing/private handles.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action before the return list and use cases. Minor redundancy between the title restatement "Get TikTok Profile" and the opening sentence, and the four-item use-case list is slightly long but each item is substantive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, the description compensates by enumerating the returned fields and the intended use cases. It is nearly complete; only error/empty-profile behavior and rate-limit context are absent, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single handle parameter is fully documented there, including the optional `@` prefix. The description only restates "by username (handle)" and adds no format or normalization detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource ("Fetches a public TikTok profile by username") and enumerates the exact return set (nickname, bio, avatar URLs, flags, counts). An agent can distinguish this from hasdata_instagram_profile_getInstagramProfile or hasdata_facebook_profile_getFacebookProfile on platform and data shape alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage contexts — CRM/lead enrichment, influencer vetting before outreach, competitor monitoring, dataset building — which orients the agent well. It stops short of naming sibling tools or stating when NOT to use it (e.g. vs tiktok_posts or tiktok_search), so it is clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_tiktok_search_getTikTokSearchtiktok_search: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | What to search for — videos or users. Defaults to video. | |
| keyword | Yes | The phrase to search for on TikTok. | |
| nextPageToken | No | Defines the next page token. Use the `nextPageToken` value returned by the previous response. Omit it to fetch the first page. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/openWorldHint/destructive=false, so the safety profile is covered. The description adds genuinely useful context: the token-based pagination model via nextPageToken, the fields returned per result type, and the embedded hasdataLink/hasdataPostsLink pointers.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the one-line purpose, then output shape, pagination, and use cases in sequence. It is on the longer side but each sentence carries distinct information, so little is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so by describing video vs user fields and the cross-links. Combined with full schema coverage and safety annotations, an agent has enough to call it correctly, though the sibling boundary remains implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the enum, keyword, and nextPageToken semantics are already fully documented in the schema. The description only restates pagination at a high level, adding no syntax or format detail beyond what the schema provides; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource ('Searches TikTok by keyword') and enumerates the two result shapes (videos vs users) with their fields. It stops short of explicitly contrasting with the closely related siblings like hasdata_tiktok_profile or hasdata_tiktok_posts, though the hasdataLink/hasdataPostsLink mentions hint at the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete use cases: 'content discovery, trend research, influencer discovery, or building datasets from a keyword.' This gives clear positive context for when to reach for it, but names no alternatives or exclusions (e.g., when to prefer the profile or posts endpoints).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_walmart_product_getWalmartProductwalmart_product: GET /ARead-onlyInspect
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: how many competitors the page advertises always and, when the page shows it, the cheapest competing price, plus - when otherOffers is enabled - the offer list with each seller name, storefront URL, price, condition, shipping cost, delivery date and return policy. Use for price and buy-box monitoring, seller and marketplace competitor tracking, assortment enrichment of item ids harvested from search, and variant mapping.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | 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 | No | 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 | No | 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 | No | 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 | No | 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. How many competitors the item advertises, and the cheapest competing price, are returned in the `otherOffers` block whether the switch is on or off, so it can be left off until the count shows there is something to collect. Default is `false`. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, and the description goes well beyond them: the otherOffers switch triggers an extra request, costs 5 credits on top of the base 10 whether or not competitors exist, and the competitor count is returned even when the switch is off. That is exactly the kind of cost/latency disclosure an agent needs before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose and the usage sentence are front-loaded and efficient, but the middle sentence is a sprawling enumeration of every returned field (badges, SNAP EBT, Walmart+ savings, per-star breakdown, variant axes, etc.) that runs long and would be better summarized or left to documentation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so thoroughly, covering the main product payload, the competitor block, and the conditional otherOffers list. Nothing needed to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so url/itemId precedence, storefront-specific id formats, language fallback, and the otherOffers cost are all already documented in the schema. The description restates the return of the otherOffers block but adds no syntax or format detail beyond what the schema provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get Walmart Product Details', 'Scrapes one Walmart product page') and immediately scopes it by storefront and item id/URL. It is clearly distinguishable from the reviews and search siblings without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Names concrete use cases (price and buy-box monitoring, competitor tracking, assortment enrichment of ids harvested from search, variant mapping), which implies the search→get workflow. It stops short of explicit when-not guidance or naming the sibling tools directly, so it is strong context without full routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_walmart_reviews_getWalmartReviewswalmart_reviews: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | 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 | No | 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 | No | Order of the returned reviews, named as the Walmart review page names it. Default is `mostRelevant`. | |
| domain | No | 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 | No | 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 | No | 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 | No | 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 | No | 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 | No | 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 | No | Return only reviews left by customers whose purchase Walmart confirmed. Narrows the pool considerably, since most reviews are unverified or syndicated from the manufacturer. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, openWorld, non-destructive), and the description adds substantial behavior beyond them: pagination ceilings follow written reviews rather than total ratings, filters-block values must be passed back as parameters, only one aspect and one condition per request, URL overrides itemId, and unsupported languages fall back to the storefront default. These are non-obvious operational constraints an agent needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose and then sealed with use cases; because there is no output schema, the mid-paragraph inventory of returned fields and the filters block is carrying necessary information. It is a single dense paragraph that could be broken up, but almost every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the full burden of describing returns and does so thoroughly (per-review fields, rating aggregates, star breakdown, AI summary, aspect scores, filters block). For a 10-parameter scraping tool it also covers pagination, sorting, filtering and storefront/language constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes beyond it by explaining the filter round-trip workflow (read the filters block, send its `value` back), that aspect topics are product-specific and must not be reused across products, and that condition filtering requires reaching a variant URL with conditionGroupCode. It adds real semantics on top of an already rich schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening states a specific verb and resource — scraping the customer reviews of one Walmart product by item id or URL — and the scope ('one product', 'ten reviews a page') cleanly separates it from the sibling product-detail and search tools. An agent can select this tool without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names concrete usage scenarios (review mining, sentiment analysis, per-product praise/complaint tracking, monitoring new reviews, verified-only feedback) and even prescribes a workflow prerequisite — make an unfiltered request first to read the filters block before filtering by aspect or condition. It does not name alternative tools or state when NOT to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_walmart_search_getSearchResultswalmart_search: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | 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 | No | 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 | No | 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 | No | The sorting option for the search results. | |
| catId | No | 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 | No | 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 | No | Walmart storefront to search. Each storefront has its own catalog, prices and currency. Default is `walmart.com`. | |
| language | No | 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 | No | Upper bound of the price range, in the storefront currency. | |
| minPrice | No | Lower bound of the price range, in the storefront currency. | |
| deliveryType | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds real behavioral value by describing the response shape (product fields, facets block, pagination, store the prices belong to) and the facet round-trip behavior. It omits rate limits or auth details, but the added context is solid for a read-only scrape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded in the first sentence, which is good, but the second sentence is an extremely long run-on enumerating every returned field. With no output schema this enumeration has some value, but the wall-of-fields style hurts scanability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description carrying the return-value inventory is appropriate and it does cover the response well. Combined with the fully documented schema, an agent has enough to call the tool correctly, with only minor gaps around rate limits or failure behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents q, url, page, sort, catId, facet, domain, language, prices, and deliveryType thoroughly. The description largely restates schema content (sort order names, price/fulfillment filters) without adding new format or precedence details beyond what the schema provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource ('Runs a keyword or category search on a chosen Walmart storefront') and scopes the capabilities (pagination, price range, fulfillment filters, facets, sort). It implicitly distinguishes itself from the product and reviews siblings by noting it harvests item ids 'to feed downstream product or reviews endpoints.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete usage contexts (SERP monitoring, price/assortment tracking, share-of-shelf, competitor discovery) and routes the agent to product/reviews endpoints for downstream work. It does not state explicit when-not conditions, but the context is clear enough to select the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_web_scraping_web_scraping_scrapeWebPageweb_scraping_web_scraping: POST /ADestructiveInspect
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, bypassing bot protections, capturing screenshots, or producing clean markdown/structured JSON to feed downstream parsers, RAG pipelines, or data warehouses.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the web page to scrape. | |
| wait | No | Time in milliseconds to wait after the page load. | |
| headers | No | Optional custom headers to send with the request. | |
| waitFor | No | CSS selector to wait for before scraping. | |
| autoMode | No | 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 | No | Whether to block ads. | |
| blockUrls | No | List of URLs to block. | |
| proxyType | No | Type of proxy to use. | |
| jsScenario | No | 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: - `evaluate`: Run custom JavaScript code on the page. - `click`: Click on an element specified by a CSS selector. - `wait`: Pause for a set duration (in milliseconds). - `waitFor`: Delay until a specific element appears. - `waitForAndClick`: Combine waiting for an element and then clicking it. - `scrollX`, `scrollY`: Scroll to specified positions on the page. - `fill`: Enter values into input fields identified by CSS selectors. Actions are executed sequentially. | |
| screenshot | No | Whether to take a screenshot of the page. | |
| excludeTags | No | The `excludeTags` parameter accepts an array of valid CSS selectors. Elements matching these selectors will be removed from the final output. Each value must be a valid `querySelectorAll` selector. This can be used to remove ads, scripts, or other unwanted sections. | |
| jsRendering | No | Enable JavaScript rendering. | |
| extractLinks | No | Extract links from the page. | |
| extractRules | No | Rules for extracting specific data from the page. For example: `{ "title": "h1", "link_href": "a#link @href", "page_text": "body" }` | |
| outputFormat | No | 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. | |
| proxyCountry | No | Optional proxy country code. | |
| extractEmails | No | Extract emails from the page. | |
| aiExtractRules | No | 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. Supported types: - `string`: plain text value - `number`: numeric value - `boolean`: true/false - `list`: an array of values - `item`: a nested object with its own structure defined under `output` | |
| blockResources | No | Whether to block loading of resources like images and stylesheets. | |
| includeOnlyTags | No | The `includeOnlyTags` parameter accepts an array of valid CSS selectors. When specified, only the elements matching these selectors will be included in the response content. Each value must be a valid `querySelectorAll` selector. Useful for extracting specific parts of the document. | |
| removeBase64Images | No | If set to `true`, any images embedded as base64-encoded strings will be removed from the output. Useful for reducing response size or when base64 images are not needed. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, openWorldHint=true and destructiveHint=true, so the safety bar is lower. The description adds genuinely useful behavioral context beyond that: managed/geo-targeted proxies, that blocking features 'require JS rendering', and that output includes status code plus extracted emails/links/AI fields. It does not reconcile the destructiveHint, nor mention auth or proxy billing (billing is only hinted at in the schema's autoMode).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core capability and then usage guidance; every clause carries information and nothing is redundant filler. The opening sentence is an unusually dense run-on of feature lists, which slightly hurts scannability, but no sentence fails to earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 21-parameter, nested-object tool with no output schema, the description compensates well by enumerating the returned artifacts (HTML/text/markdown/JSON, status code, emails, links, CSS extractions, AI fields) and the major optional feature groups. Given the schema's full parameter coverage, an agent has enough to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3 and the schema carries the parameter detail. The description still adds cross-parameter relationships not obvious from the schema alone, notably that resource/ad/URL blocking depends on JS rendering, and it groups the jsScenario action vocabulary (click, scroll, fill, waitFor) into one place for quick comprehension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Scrape Web Page', 'Universal web scraper that fetches any public URL') and immediately scopes the capability set (proxies, JS rendering, screenshots, extraction). An agent knows exactly what the tool does without opening the schema. No siblings exist to differentiate from, so the remaining burden is met.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The final sentence gives explicit when-to-use contexts: 'fallback/universal fetcher for sites without a dedicated API', 'scraping JS-heavy SPAs', 'bypassing bot protections', 'capturing screenshots', and feeding RAG/warehouse pipelines. It lacks any when-not-to-use or exclusion criteria, which keeps it short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_yellowpages_place_getPlaceDetailsyellowpages_place: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The YellowPages URL of the place. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, covering the safety/live-data profile. The description adds one genuinely useful behavioral trait: unpublished fields are omitted from the response. However, it says nothing about scraping latency, rate limits, or failure modes for a live scraper, so it adds only modest context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose, then the field list, then caveats, then use cases in a logical order. The long enumeration of returnable fields is dense but earns its place given there is no output schema. Minor verbosity in the field list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single-param, no-output-schema scraper with annotations covering safety, the description is nearly complete: it lists returned fields, notes field omission, and gives use cases. It lacks only operational caveats (latency, throttling, bad-URL behavior) that would matter for a live scraper.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single url parameter, so the schema already documents it and baseline 3 applies. The description restates the URL source (yellowpages.com listings) but adds no format, canonicalization, or validation guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (scrapes/returns) and resource (a single YellowPages business listing URL), and enumerates the returned business data fields. Sibling search_getSearchResults is implicitly distinguished by 'a single ... URL' vs. the search endpoint referenced in the usage sentence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly names three use cases (hydrate a lead with verified NAP data, build a B2B contact database, validate business legitimacy) and routes the agent to the sibling Search endpoint as the source of URLs. Clear when-to-use with an alternative input source.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_yellowpages_search_getSearchResultsyellowpages_search: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | The page number of the results to retrieve. | |
| sort | No | The sorting option for the search results. | |
| domain | No | YellowPages domain to use. Default is `www.yellowpages.com`. | |
| keyword | Yes | The search term for which to get the search results. | |
| location | Yes | The location where to search for businesses with the given keyword. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, non-destructive, open-world), so the bar is lower; the description still adds real behavioral detail such as the sort parameter being valid on yellowpages.com only and page-based pagination. It does not discuss rate limits or result caps, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core operation before moving to return fields and use cases, and every sentence carries information. The final sentence is dense with two distinct use cases but not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates returned fields (name, listing URL, phone, address, categories, rating, review count, years in business), which is exactly what an agent needs to judge fit. It omits pagination termination behavior and how many results per page, a minor remaining gap for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3 and the schema carries most parameter meaning. The description adds one genuinely new constraint not in the schema: the sort enum is restricted to yellowpages.com. It does not explain pagination semantics or default page behavior, so it is above baseline but not rich.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Runs a YellowPages business search by keyword plus location') and enumerates the dimensions it controls (sort, domain, pagination). It also differentiates itself from the sibling by naming the YellowPages Place endpoint as the downstream enrichment step rather than a competing search path.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear positive usage contexts (B2B lead generation by niche and city, geo-targeted prospect lists) and explicitly names the sibling tool it feeds into. It stops short of stating when not to use it or any prerequisite conditions, so it lands at clear-context-without-exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_yelp_place_getPlaceDetailsyelp_place: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Yelp domain to use. Default is `www.yelp.com`. | |
| placeId | Yes | The Yelp ID or Yelp Alias of the place. For example, 'jPIZ3FR5LNcwPuUHi2Fe4g' or 'mcdonalds-new-york-386'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds real context beyond that by enumerating what the response contains (name, address, price range, categories, hours, amenities, photos, highlighted reviews) and noting domain targeting, and it is consistent with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action, then the return payload, then the use cases. The long return-value list earns its place because there is no output schema, though the opening title line 'Get Yelp Place Details' is a slight restatement of the name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With read-only annotations, 100% schema coverage on two simple params, and no output schema, the description closes the remaining gaps by listing the returned fields and the scenarios that justify a call. An agent has everything needed to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both placeId and domain are already documented in the schema. The description only restates that lookup is 'by Yelp ID or alias with domain targeting' and adds no format examples, validation rules, or default behavior beyond what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Fetches a single Yelp business by Yelp ID or alias.' The word 'single' and the reliance on Yelp ID/alias imply differentiation from the sibling search and reviews endpoints, though no sibling is named explicitly, which keeps this short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives three concrete use cases: enriching leads/listings, monitoring a competitor's rating/review count, and validating hours/amenities before display. That is strong when-to-use guidance, but there is no explicit when-not-to-use or direct alternative (e.g. use yelp_search to find the ID first).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_yelp_reviews_getPlaceReviewsyelp_reviews: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| num | No | 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`. | |
| query | No | 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. | |
| start | No | 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`. | |
| domain | No | Yelp domain to use. Default is `www.yelp.com`. | |
| rating | No | 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. | |
| sortBy | No | The order in which the reviews are returned. Defaults to relevanceDesc. | |
| placeId | Yes | The Yelp ID of the place. For example, '-4ofMtrD7pSpZIX5pnDkig'. Yelp IDs can be obtained from the Yelp Search Scraper API. | |
| languageCode | No | Language of the reviews to return, as a two-letter code (e.g., 'en', 'es', 'fr'). Defaults to en. | |
| nextPageToken | No | 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. | |
| notRecommended | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, non-destructive, open-world behavior. The description adds real value beyond that: the two mutually exclusive paging strategies, the requirement to keep filters constant across pages, the loop-until-hasNextPage stop condition, and the fact that notRecommended reviews omit photos/videos/reactions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and pagination are front-loaded before the long return-value enumeration. The inventory of review fields is lengthy, but it earns its place since no output schema exists to document the payload.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description fully covers the return shape (author profile, text, rating, photos, reactions, tags, owner reply, business rating/language totals) and the pagination contract. Combined with 100% schema coverage, an agent has everything needed to call and page correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every parameter, including the start/num/nextPageToken interaction. The description's paging walkthrough (step start by num, or resend nextPageToken) synthesizes the schema but adds little that isn't already there, matching the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Fetches the review feed of a single Yelp business by Yelp ID') with scope, and the Yelp branding plus 'single business by Yelp ID' clearly distinguishes it from the Amazon/Google Maps/Walmart review siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit pagination procedure and concrete use cases (sentiment monitoring, competitor complaint mining, response tracking, rating-distribution datasets). It does not name the sibling that supplies the placeId (yelp_search_getSearchResults) nor state when to prefer it over other review sources, so it stops short of 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_yelp_search_getSearchResultsyelp_search: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| l | No | Parameter defines the distance or map radius for the search results. For example: `g:-95.2486,29.8496,-95.4277,29.6324`. | |
| start | No | Result offset for pagination (e.g., 0 for the first page, 10 for the 2nd page, etc.). | |
| domain | No | Yelp domain to use. Default is `www.yelp.com`. | |
| keyword | Yes | The search term for which to get the search results. | |
| location | Yes | The location where to search for businesses with the given keyword. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/openWorldHint/destructiveHint, so the safety profile is covered. The description adds behavior beyond that: it enumerates the returned fields (alias/ID, name, categories, rating, review count, price tier, thumbnail) and notes pagination is offset-based, which matters since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and scope are front-loaded in the first sentence, with the return shape and downstream uses following. The final clause stacks three use cases, which is slightly listy, but nothing is wasted or circular.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter read-only search tool with no output schema, the description covers the required inputs, the optional radius/domain/pagination behavior, and the return contents. It is complete enough to invoke correctly; only auth/rate-limit context is absent, which is minor for this tool class.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 100%, so the baseline is 3, but the description genuinely clarifies the `l` parameter's meaning ("map-bounded radius ... g:lon1,lat1,lon2,lat2"), which the schema only demonstrates by bare example, and labels `start` as offset-based pagination. It adds real meaning over the structured fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ("Runs a Yelp business search by keyword and location") and scopes it further with the optional map-bounded radius, domain targeting, and offset pagination. It also differentiates itself from the sibling place endpoint by saying returned aliases feed into it, so an agent can tell the search tool apart from the detail tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete usage context: feed returned aliases to the Yelp Place endpoint for details, or use results for local-discovery UIs and competitor/market-share datasets. It stops short of explicit exclusions (e.g., when to prefer the reviews endpoint instead), but the when-to-use context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_youtube_channel_getYoutubeChannelyoutube_channel: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| gl | No | 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 | No | 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 | No | 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 | |
| channelId | Yes | 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 | No | Device type for the request. | |
| paginationToken | No | Token returned in the previous response to fetch the next page of results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds real behavioral context beyond that: each tab yields a different item shape, and 'store (desktop only)' is a constraint not present in the annotations. Pagination behavior is implied by the paginationToken param but not discussed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose, then the tab/return breakdown, then use cases. It is dense but nearly every clause carries information; the tab enumeration is somewhat redundant with the schema but aids scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of explaining return values and does so thoroughly — identity fields, subscriber/view counts, social links, and per-tab item shapes. Nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description largely restates the channelId formats (UC…, @handle) and the tab list already documented in the schema; the only genuinely new detail is that 'store' is desktop-only.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Fetches a YouTube channel by its ID or handle') and enumerates the tabs and returned identity fields. It clearly differentiates itself from the sibling youtube_video, youtube_transcript and youtube_search tools by scoping to channel-level data and noting the videoId handoff.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete use cases (monitor competitor channels, build creator directories, track posting cadence, feed videoId into the Video/Transcript endpoints), which routes the agent to the right sibling for downstream steps. It stops short of explicit when-not-to-use exclusions, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_youtube_search_getYoutubeSearchResultsyoutube_search: GET /ARead-onlyInspect
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 '), 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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Free-text search query, exactly as a user would type it into the YouTube search box. | |
| gl | No | 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 | No | 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 | No | 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 | No | Limit results to videos uploaded within this time window relative to now. | |
| length | No | Filter by video duration bucket: - `under4` — under 4 minutes - `between420` — 4 to 20 minutes - `plus20` — over 20 minutes | |
| sortBy | No | 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__ | No | 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 | |
| videoType | No | Restrict results to a single YouTube content type — regular videos, Shorts, channels, playlists, or movies. | |
| deviceType | No | Device type for the request. | |
| paginationToken | No | Token returned in the previous response to fetch the next page. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, openWorldHint, destructiveHint=false), so the description's real contribution is the response-shape disclosure: the page is split into videoResults/channelResults/shortsResults/shelves/adsResults etc., each preserving positionOnPage for layout reconstruction. That is meaningful behavioral context. It adds nothing on auth, rate limits, or quota, which keeps it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, then the return structure, then use cases in a single dense block. Nearly every clause carries information, though the long parenthetical inventories of output fields and flags are heavy for prose that a schema would normally carry.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description takes on return-value documentation and does it well, describing each result block and the totalResults field. Combined with complete parameter coverage and annotations, an agent has enough to call the tool and interpret its output correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and five parameters carry enums, so the schema already documents query syntax, country/language codes, the sp override, duration buckets, and feature flags. The description adds no parameter-level meaning beyond that, making the baseline 3 correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Searches YouTube for a query') and immediately delimits what it returns (the full results page). It also differentiates itself from siblings by naming the downstream YouTube Video, Channel, and Transcript endpoints that consume its videoId/channelId output. An agent can identify this as the YouTube search entry point without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly enumerates when to use it ('competitor and topic monitoring, brand-mention tracking, ad-placement intelligence, creator discovery, trend research') and how it chains to other endpoints. It stops short of naming which sibling to prefer over an alternative (e.g. TikTok/Google SERP search for the same intent), so it is clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_youtube_transcript_getYoutubeTranscriptyoutube_transcript: GET /ARead-onlyInspect
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).
| Name | Required | Description | Default |
|---|---|---|---|
| v | Yes | 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 | No | 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 | No | 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. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description goes further by disclosing the response shape (segments with startMs/endMs/snippet/startTimeText plus availableTranscripts[] with language, type and selected flags) and the asr-vs-human-authored fallback behavior — useful context since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose and return structure before the use-case list. It is a single dense paragraph whose sentences mostly earn their place, though the use-case enumeration runs somewhat long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by explaining the transcript segment fields and the availableTranscripts listing. Together with a fully documented parameter schema and annotation-covered safety profile, an agent has everything needed to call and interpret this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (v, type, languageCode) are already documented in the schema; the description's parameter notes (languageCode examples, type=asr, default track behavior) largely restate that. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get YouTube Video Transcript... timed transcript (subtitles) of a YouTube video by its 11-character videoId'), immediately distinguishing it from the sibling video/channel/search endpoints. An agent can tell exactly what it returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage contexts (RAG/LLM pipelines, summaries, chapter outlines, archives, translation/accessibility, catalog analysis) and a concrete routing hint ('pair with the YouTube Channel endpoint to enumerate videos, then fetch transcripts'). It lacks an explicit 'don't use this when...' contrast against siblings like getYoutubeVideo, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_youtube_video_getYoutubeVideoyoutube_video: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| v | Yes | 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 | No | 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 | No | 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 | No | Device type for the request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, non-destructive, open-world reads, so the safety profile is covered. The description adds genuine behavioral context: the exact shape of the payload (raw + normalized counts, asr caption kinds, Content-ID music matches, rail videos), which an agent cannot get elsewhere since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose in the first line, then spends the bulk on the return payload enumeration, which is justified because no output schema exists. It is dense but every clause carries information; no filler sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-resource GET with no output schema, the description covers identity of the resource, returned fields, and usage contexts. Nothing an agent needs to call it correctly or interpret the result is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters including the gl/hl codes and deviceType enum are already documented in the schema. The description's mention of the 11-character videoId only restates what the schema says, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (fetch a single YouTube video by ID) and immediately enumerates the returned resource's key attributes. It distinguishes itself from the youtube_transcript sibling and from channel/search siblings by scoping to one video.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Lists concrete use cases (enrich a URL, monitor view/like growth, extract music or affiliate links, RAG features) and routes the agent to the YouTube Transcript endpoint for caption fetching. There is no explicit 'when not to use' or alternative for the search/channel siblings, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_zillow_listing_getRealEstateListingszillow_listing: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| hoa | No | The Homeowners Association (HOA) fee. | |
| page | No | The page number of the results to retrieve. | |
| sort | No | The sorting option for the search results. | |
| type | Yes | The type of listing. | |
| pets__ | No | An array of pet options. | |
| keyword | Yes | The keyword used to search for listings. | |
| tours__ | No | An array of tour options. | |
| views__ | No | An array of views. | |
| keywords | No | Additional keywords to refine the search. | |
| beds_max_ | No | The maximum number of bedrooms. | |
| beds_min_ | No | The minimum number of bedrooms. | |
| basement__ | No | An array of basement options. | |
| baths_max_ | No | The maximum number of bathrooms. | |
| baths_min_ | No | The minimum number of bathrooms. | |
| moveInDate | No | The desired move-in date in `YYYY-MM-DD` format. | |
| price_max_ | No | The maximum price of the listing. | |
| price_min_ | No | The minimum price of the listing. | |
| homeTypes__ | No | An array of home types to filter the listings. | |
| daysOnZillow | No | The number of days a listing has been on Zillow. | |
| lotSize_max_ | No | The maximum lot size. | |
| lotSize_min_ | No | The minimum lot size. | |
| mustHaveGarage | No | If set to true, only listings with a garage will be included. | |
| yearBuilt_max_ | No | The maximum year the property was built. | |
| yearBuilt_min_ | No | The minimum year the property was built. | |
| parkingSpotsMin | No | The minimum number of parking spots. | |
| singleStoryOnly | No | If set to true, only single-story properties will be included. | |
| squareFeet_max_ | No | The maximum square footage. | |
| squareFeet_min_ | No | The minimum square footage. | |
| otherAmenities__ | No | An array of other amenities. | |
| propertyStatus__ | No | An array of property statuses. | |
| hide55plusCommunities | No | If set to true, 55+ communities will be excluded. | |
| listingPublishOptions__ | No | An array of listing publish options. Use `ownerPosted` for listings by owner and `agentListed` for listings by agent. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds valuable context by enumerating the returned fields (address, zpid, Zestimate, coordinates, broker, etc.), which matters given there is no output schema, though pagination behavior and rate limits remain unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured and front-loaded: purpose first, then capability/filters, then returns, then use cases. Each sentence earns its place, though the filter enumeration partially restates schema content and the description is on the long side.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 32-parameter search tool with no output schema, the description compensates by summarizing return fields and listing use cases, so an agent knows what it gets back. It is nearly complete, missing only pagination semantics and an explicit call-out of the two required parameters (keyword, type).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 32 parameters are already documented. The description broadly enumerates filter categories (price, beds, baths, home type, HOA, views, pet policy) but adds no syntax, format, or interaction detail beyond what the schema provides. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Searches/Get) and resource (Zillow Real Estate Listings), and specifies the three listing types (for-sale, for-rent, sold). It distinguishes itself from the sibling property endpoint by noting it collects URLs 'for the Zillow Property endpoint,' giving an agent a clear routing signal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete use cases (market dashboards, rental pricing analysis, agent lead lists, inventory tracking) and a downstream relationship to the Zillow Property endpoint. However, it names no explicit alternative tool or 'when-not-to-use' condition, leaving the sibling boundary to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hasdata_zillow_property_getPropertyDetailszillow_property: GET /ARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The URL of the property on Zillow. Must be a valid Zillow property URL. | |
| extractAgentEmails | No | If enabled, attempts to extract agent email addresses from the property details. Increases the cost of the request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnlyHint, non-destructive, openWeb). The description adds real behavioral context beyond that: agent-email extraction is optional and raises request cost, and walk/transit scores only exist for building pages. It does not discuss caching, rate limits, or failure modes on invalid URLs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose in the first sentence, then a single dense sentence. The return-field enumeration is long, but it earns its place since no output schema exists. Slightly laundry-list-like but no wasted framing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of explaining return values and does so thoroughly (price history, Zestimate, photos, school assignments, agent/broker). Remaining gap is the absence of failure/pagination behavior for what is a scraper-style fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both url and extractAgentEmails. The description restates that input is a URL/zpid and that email extraction is optional and costlier, adding marginal value but no syntax or format detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ("Fetches the full Zillow property page by URL/zpid") and clearly scopes it to a single property, which distinguishes it from the listing/search sibling hasdata_zillow_listing_getRealEstateListings. It does not explicitly name that sibling, so sibling differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete use contexts (valuation models, CMA generation, investor underwriting, rental yield analysis, agent enrichment), which tells an agent when this tool fits. It stops short of naming alternatives or stating when-not-to-use, so it is clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
hasdata_indeed_listing_getJobListings3 fields changed- added
Input schema / properties / datePostedAdded value: +{ + "description": "Returns only jobs posted within the given number of days.", + "enum": [ + 1, + 3, + 7, + 14 + ], + "type": "number" +} - added
Input schema / properties / remoteTypeAdded value: +{ + "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.", + "enum": [ + "remote", + "hybrid" + ], + "type": "string" +} - added
Input schema / properties / sponsoredOnlyAdded value: +{ + "description": "When enabled, the request is made in a way that returns more sponsored listings. Defaults to false.", + "type": "boolean" +}
- Changed
hasdata_web_scraping_web_scraping_scrapeWebPage1 field changed- added
Input schema / properties / autoModeAdded value: +{ + "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.", + "type": "boolean" +}
13 tool updates
- Added
hasdata_chatgpt_chat_getChatgptAnswer - Changed
hasdata_glassdoor_listing_getJobListings8 fields changed- added
Input schema / properties / datePostedAdded value: +{ + "description": "Returns only jobs posted within the given number of days.", + "enum": [ + 1, + 3, + 7, + 14, + 30 + ], + "type": "number" +} - added
Input schema / properties / easyApplyOnlyAdded value: +{ + "description": "Returns only jobs that can be applied to directly on Glassdoor. Defaults to false.", + "type": "boolean" +} - added
Input schema / properties / maxSalaryAdded value: +{ + "description": "Upper bound of the yearly pay range, must be greater than `minSalary`. Can be used on its own.", + "type": "number" +} - added
Input schema / properties / minRatingAdded value: +{ + "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.", + "enum": [ + 1, + 2, + 3, + 4 + ], + "type": "number" +} - added
Input schema / properties / minSalaryAdded value: +{ + "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.", + "type": "number" +} - changed
Input schema / properties / nextPageToken / descriptionPrevious value: -"Token for fetching the next page of jobs."New value: +"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." - added
Input schema / properties / radiusAdded value: +{ + "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.", + "enum": [ + 0, + 5, + 10, + 15, + 25, + 50, + 100 + ], + "type": "number" +} - added
Input schema / properties / remoteOnlyAdded value: +{ + "description": "Returns only remote jobs. Defaults to false.", + "type": "boolean" +}
- Changed
hasdata_google_maps_place_getPlaceDetails1 field changed- added
Input schema / properties / fetchWebResultsAdded value: +{ + "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.", + "type": "boolean" +}
- Changed
hasdata_google_maps_posts_getMapPosts1 field changed- removed
Input schema / properties / nextPageTokenRemoved value: -{ - "description": "Defines the next page token. It is used for retrieving the next page results.", - "type": "string" -}
- Added
hasdata_google_scholar_case_law_getScholarCaseLawOpinion - Changed
hasdata_google_scholar_scholar_getScholarSearchResults1 field changed- changed
Input schema / properties / asSdt / descriptionPrevious value: -"Search type/filter, e.g. `0,5` for the default Articles filter, `4` for case law with court codes, or `0`/`7` for patents."New value: +"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`."
- Changed
hasdata_google_serp_ai_overview_getAiOverviewResponse1 field changed- changed
Input schema / properties / pageToken / descriptionPrevious value: -"Token from `aiOverview` block in Google SERP API. Valid for 4 minutes."New value: +"Token from `aiOverview` block in Google SERP API. Valid for 1 minute."
- Changed
hasdata_google_serp_events_getEventInformation10 fields changed- removed
Input schema / properties / domainRemoved value: -{ - "description": "Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`.", - "type": "string" -} - removed
Input schema / properties / glRemoved value: -{ - "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`.", - "type": "string" -} - removed
Input schema / properties / hlRemoved value: -{ - "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": "string" -} - removed
Input schema / properties / htichipsRemoved value: -{ - "description": "Filter parameter for refining event search results. Supports various filters for events. Multiple filters can be passed using a comma. The available filters are:\n\n- `date:today`: Today's Events\n- `date:tomorrow`: Tomorrow's Events\n- `date:week`: This Week's Events\n- `date:weekend`: This Weekend's Events\n- `date:next_week`: Next Week's Events\n- `date:month`: This Month's Events\n- `date:next_month`: Next Month's Events\n- `event_type:Virtual-Event`: Online Events\n\nFor example, to filter for today's online events, use: `event_type:Virtual-Event,date:today`.\n", - "type": "string" -} - removed
Input schema / properties / locationRemoved value: -{ - "description": "Google canonical location for the search.", - "type": "string" -} - added
Input schema / properties / pageTokenAdded value: +{ + "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.", + "type": "string" +} - removed
Input schema / properties / qRemoved value: -{ - "description": "Specify the search term for which you want to scrape the SERP.", - "type": "string" -} - removed
Input schema / properties / startRemoved value: -{ - "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", - "type": "number" -} - removed
Input schema / properties / uuleRemoved value: -{ - "description": "The encoded location parameter.", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "q" -]New value: +[ + "pageToken" +]
- Changed
hasdata_google_serp_short_videos_getShortVideosSearchResults1 field changed- added
Input schema / properties / tbsAdded value: +{ + "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", + "type": "string" +}
- Added
hasdata_google_travel_flights_deals_getGoogleFlightsDeals - Added
hasdata_instagram_comments_getInstagramComments - Added
hasdata_perplexity_chat_getPerplexityAnswer - Changed
hasdata_zillow_listing_getRealEstateListings2 fields changed- changed
Input schema / properties / listingPublishOptions__ / descriptionPrevious value: -"An array of listing publish options."New value: +"An array of listing publish options. Use `ownerPosted` for listings by owner and `agentListed` for listings by agent." - removed
Input schema / properties / listingTypeRemoved value: -{ - "description": "The category of the listing.", - "enum": [ - "byAgent", - "byOwner" - ], - "type": "string" -}
1 tool update
- Added
hasdata_facebook_profile_getFacebookProfile
17 tool updates
- Changed
hasdata_airbnb_listing_getAirbnbListings6 fields changed- changed
Input schema / properties / location / descriptionPrevious value: -"The location to search for listings."New value: +"The location to search for listings. Required unless a full map bounding box (neLat, neLng, swLat, swLng) is provided." - added
Input schema / properties / neLatAdded value: +{ + "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", + "type": "number" +} - added
Input schema / properties / neLngAdded value: +{ + "description": "North-east corner longitude of the map bounding box.\n", + "type": "number" +} - added
Input schema / properties / swLatAdded value: +{ + "description": "South-west corner latitude of the map bounding box.\n", + "type": "number" +} - added
Input schema / properties / swLngAdded value: +{ + "description": "South-west corner longitude of the map bounding box.\n", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "location", - "checkIn" -]New value: +[ + "checkIn" +]
- Changed
hasdata_amazon_product_getProductDetails1 field changed- changed
Input schema / properties / otherSellers / descriptionPrevious value: -"If set to true, extracts the other sellers block from the product page."New value: +"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."
- Changed
hasdata_bing_serp_getSearchResults5 fields changed- removed
Input schema / properties / countRemoved value: -{ - "description": "Number of results per page, ranging from 1 to 50.", - "type": "number" -} - changed
Input schema / properties / location / descriptionPrevious value: -"Defines the search’s origin location. For realistic results, set location at the city level. If omitted, the proxy’s location may be used."New value: +"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." - removed
Input schema / properties / safeRemoved value: -{ - "description": "Adult Content Filtering option.", - "enum": [ - "off", - "moderate", - "strict" - ], - "type": "string" -} - added
Input schema / properties / safeSearchAdded value: +{ + "description": "Adult Content Filtering option.", + "enum": [ + "off", + "moderate", + "strict" + ], + "type": "string" +} - added
Input schema / properties / setLangAdded value: +{ + "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`).", + "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" +}
- Added
hasdata_duckduckgo_serp_getSearchResults - Added
hasdata_google_scholar_cite_getScholarCitationFormats - Added
hasdata_google_scholar_scholar_getScholarSearchResults - Added
hasdata_instagram_posts_getInstagramPosts - Changed
hasdata_redfin_listing_getRealEstateListings1 field changed- changed
Input schema / properties / keyword / descriptionPrevious value: -"The zipcode used to search for listings."New value: +"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."
- Added
hasdata_tiktok_comments_getTikTokComments - Added
hasdata_tiktok_posts_getTikTokPosts - Added
hasdata_tiktok_profile_getTikTokProfile - Added
hasdata_tiktok_search_getTikTokSearch - Added
hasdata_walmart_product_getWalmartProduct - Added
hasdata_walmart_reviews_getWalmartReviews - Added
hasdata_walmart_search_getSearchResults - Added
hasdata_yelp_reviews_getPlaceReviews - Changed
hasdata_zillow_listing_getRealEstateListings1 field changed- changed
Input schema / properties / moveInDate / descriptionPrevious value: -"The desired move-in date."New value: +"The desired move-in date in `YYYY-MM-DD` format."
26 tool updates
- Changed
hasdata_amazon_product_getProductDetails2 fields changed- changed
Input schema / properties / shippingLocation / descriptionPrevious value: -"The two-letter country code to define the country of the delivery address."New value: +"The two-letter country code to define the country of the delivery address. Provide one exact documented value (238 allowed), e.g. `AU`, `CA`." - removed
Input schema / properties / shippingLocation / enumRemoved value: -[ - "AU", - "CA", - "CN", - "JP", - "MX", - "SG", - "GB", - "AF", - "AX", - "AL", - "DZ", - "AS", - "AD", - "AO", - "AI", - "AG", - "AR", - "AM", - "AW", - "AT", - "AZ", - "BS", - "BH", - "BD", - "BB", - "BY", - "BE", - "BZ", - "BJ", - "BM", - "BT", - "BO", - "BQ", - "BA", - "BW", - "BV", - "BR", - "IO", - "BN", - "BG", - "BF", - "BI", - "KH", - "CM", - "CV", - "KY", - "CF", - "TD", - "CL", - "CX", - "CC", - "CO", - "KM", - "CG", - "CD", - "CK", - "CR", - "CI", - "HR", - "CW", - "CY", - "CZ", - "DK", - "DJ", - "DM", - "DO", - "EC", - "EG", - "SV", - "GQ", - "ER", - "EE", - "ET", - "FK", - "FO", - "FJ", - "FI", - "FR", - "GF", - "PF", - "TF", - "GA", - "GM", - "GE", - "DE", - "GH", - "GI", - "GR", - "GL", - "GD", - "GP", - "GT", - "GG", - "GN", - "GW", - "GY", - "HT", - "HM", - "VA", - "HN", - "HK", - "HU", - "IS", - "IN", - "ID", - "IQ", - "IE", - "IM", - "IL", - "IT", - "JM", - "JE", - "JO", - "KZ", - "KE", - "KI", - "XK", - "KW", - "KG", - "LA", - "LV", - "LB", - "LS", - "LR", - "LY", - "LI", - "LT", - "LU", - "MO", - "MK", - "MG", - "MW", - "MY", - "MV", - "ML", - "MT", - "MH", - "MQ", - "MR", - "MU", - "YT", - "FM", - "MD", - "MC", - "MN", - "ME", - "MS", - "MA", - "MZ", - "MM", - "NA", - "NR", - "NP", - "NL", - "AN", - "NC", - "NZ", - "NI", - "NE", - "NG", - "NU", - "NF", - "NO", - "OM", - "PK", - "PW", - "PS", - "PA", - "PG", - "PY", - "PE", - "PH", - "PN", - "PL", - "PT", - "QA", - "KR", - "RE", - "RO", - "RU", - "RW", - "BL", - "SH", - "KN", - "LC", - "MF", - "PM", - "VC", - "WS", - "SM", - "ST", - "SA", - "SN", - "RS", - "SC", - "SL", - "SX", - "SK", - "SI", - "SB", - "SO", - "ZA", - "ES", - "LK", - "SR", - "SZ", - "SE", - "CH", - "TW", - "TJ", - "TZ", - "TH", - "TL", - "TG", - "TK", - "TO", - "TT", - "TN", - "TR", - "TM", - "TC", - "TV", - "UG", - "UA", - "AE", - "US", - "UY", - "UZ", - "VU", - "VE", - "VN", - "VG", - "VI", - "WF", - "EH", - "YE", - "ZM", - "ZW" -]
- Changed
hasdata_amazon_search_getSearchResults2 fields changed- changed
Input schema / properties / shippingLocation / descriptionPrevious value: -"The two-letter country code to define the country of the delivery address."New value: +"The two-letter country code to define the country of the delivery address. Provide one exact documented value (238 allowed), e.g. `AU`, `CA`." - removed
Input schema / properties / shippingLocation / enumRemoved value: -[ - "AU", - "CA", - "CN", - "JP", - "MX", - "SG", - "GB", - "AF", - "AX", - "AL", - "DZ", - "AS", - "AD", - "AO", - "AI", - "AG", - "AR", - "AM", - "AW", - "AT", - "AZ", - "BS", - "BH", - "BD", - "BB", - "BY", - "BE", - "BZ", - "BJ", - "BM", - "BT", - "BO", - "BQ", - "BA", - "BW", - "BV", - "BR", - "IO", - "BN", - "BG", - "BF", - "BI", - "KH", - "CM", - "CV", - "KY", - "CF", - "TD", - "CL", - "CX", - "CC", - "CO", - "KM", - "CG", - "CD", - "CK", - "CR", - "CI", - "HR", - "CW", - "CY", - "CZ", - "DK", - "DJ", - "DM", - "DO", - "EC", - "EG", - "SV", - "GQ", - "ER", - "EE", - "ET", - "FK", - "FO", - "FJ", - "FI", - "FR", - "GF", - "PF", - "TF", - "GA", - "GM", - "GE", - "DE", - "GH", - "GI", - "GR", - "GL", - "GD", - "GP", - "GT", - "GG", - "GN", - "GW", - "GY", - "HT", - "HM", - "VA", - "HN", - "HK", - "HU", - "IS", - "IN", - "ID", - "IQ", - "IE", - "IM", - "IL", - "IT", - "JM", - "JE", - "JO", - "KZ", - "KE", - "KI", - "XK", - "KW", - "KG", - "LA", - "LV", - "LB", - "LS", - "LR", - "LY", - "LI", - "LT", - "LU", - "MO", - "MK", - "MG", - "MW", - "MY", - "MV", - "ML", - "MT", - "MH", - "MQ", - "MR", - "MU", - "YT", - "FM", - "MD", - "MC", - "MN", - "ME", - "MS", - "MA", - "MZ", - "MM", - "NA", - "NR", - "NP", - "NL", - "AN", - "NC", - "NZ", - "NI", - "NE", - "NG", - "NU", - "NF", - "NO", - "OM", - "PK", - "PW", - "PS", - "PA", - "PG", - "PY", - "PE", - "PH", - "PN", - "PL", - "PT", - "QA", - "KR", - "RE", - "RO", - "RU", - "RW", - "BL", - "SH", - "KN", - "LC", - "MF", - "PM", - "VC", - "WS", - "SM", - "ST", - "SA", - "SN", - "RS", - "SC", - "SL", - "SX", - "SK", - "SI", - "SB", - "SO", - "ZA", - "ES", - "LK", - "SR", - "SZ", - "SE", - "CH", - "TW", - "TJ", - "TZ", - "TH", - "TL", - "TG", - "TK", - "TO", - "TT", - "TN", - "TR", - "TM", - "TC", - "TV", - "UG", - "UA", - "AE", - "US", - "UY", - "UZ", - "VU", - "VE", - "VN", - "VG", - "VI", - "WF", - "EH", - "YE", - "ZM", - "ZW" -]
- Changed
hasdata_booking_place_getBookingPlaceDetails2 fields changed- changed
Input schema / properties / currency / descriptionPrevious value: -"Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency."New value: +"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`." - removed
Input schema / properties / currency / enumRemoved value: -[ - "hotelCurrency", - "usd", - "eur", - "aed", - "ars", - "aud", - "azn", - "bhd", - "brl", - "cad", - "chf", - "clp", - "cny", - "cop", - "czk", - "dkk", - "egp", - "fjd", - "gbp", - "gel", - "hkd", - "huf", - "idr", - "ils", - "inr", - "isk", - "jod", - "jpy", - "krw", - "kwd", - "kzt", - "mdl", - "mop", - "mxn", - "myr", - "nad", - "nok", - "nzd", - "omr", - "pln", - "qar", - "ron", - "rub", - "sar", - "sek", - "sgd", - "thb", - "try", - "twd", - "uah", - "xof", - "zar" -]
- Changed
hasdata_booking_search_getBookingSearchResults2 fields changed- changed
Input schema / properties / currency / descriptionPrevious value: -"Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency."New value: +"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`." - removed
Input schema / properties / currency / enumRemoved value: -[ - "hotelCurrency", - "usd", - "eur", - "aed", - "ars", - "aud", - "azn", - "bhd", - "brl", - "cad", - "chf", - "clp", - "cny", - "cop", - "czk", - "dkk", - "egp", - "fjd", - "gbp", - "gel", - "hkd", - "huf", - "idr", - "ils", - "inr", - "isk", - "jod", - "jpy", - "krw", - "kwd", - "kzt", - "mdl", - "mop", - "mxn", - "myr", - "nad", - "nok", - "nzd", - "omr", - "pln", - "qar", - "ron", - "rub", - "sar", - "sek", - "sgd", - "thb", - "try", - "twd", - "uah", - "xof", - "zar" -]
- Changed
hasdata_google_images_images_getImageSearchResults6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_maps_contributor_reviews_getMapReviews4 fields changed- changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_maps_photos_getMapPhotos2 fields changed- changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_maps_place_getPlaceDetails4 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_maps_posts_getMapPosts2 fields changed- changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_maps_reviews_getMapReviews2 fields changed- changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_maps_search_performMapSearch6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_ai_mode_getAiModeResponse4 fields changed- changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_events_getEventInformation6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_news_getGoogleNews4 fields changed- changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_product_getProductInformation6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_serp_getSearchResults6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_serp_light_getSearchResults6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_shopping_getSearchResults6 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"Google domain to use. Default is google.com."New value: +"Google domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "google.ac", - "google.ad", - "google.ae", - "google.al", - "google.am", - "google.as", - "google.at", - "google.az", - "google.ba", - "google.be", - "google.bf", - "google.bg", - "google.bi", - "google.bj", - "google.bs", - "google.bt", - "google.by", - "google.ca", - "google.cd", - "google.cf", - "google.cg", - "google.ch", - "google.ci", - "google.cl", - "google.cm", - "google.co.ao", - "google.co.bw", - "google.co.ck", - "google.co.cr", - "google.co.id", - "google.co.il", - "google.co.in", - "google.co.jp", - "google.co.ke", - "google.co.kr", - "google.co.ls", - "google.co.ma", - "google.co.mz", - "google.co.nz", - "google.co.th", - "google.co.tz", - "google.co.ug", - "google.co.uk", - "google.co.uz", - "google.co.ve", - "google.co.vi", - "google.co.za", - "google.co.zm", - "google.co.zw", - "google.com", - "google.com.af", - "google.com.ag", - "google.com.ai", - "google.com.ar", - "google.com.au", - "google.com.bd", - "google.com.bh", - "google.com.bn", - "google.com.bo", - "google.com.br", - "google.com.bz", - "google.com.co", - "google.com.cu", - "google.com.cy", - "google.com.do", - "google.com.ec", - "google.com.eg", - "google.com.et", - "google.com.fj", - "google.com.gh", - "google.com.gi", - "google.com.gt", - "google.com.hk", - "google.com.jm", - "google.com.kh", - "google.com.kw", - "google.com.lb", - "google.com.ly", - "google.com.mm", - "google.com.mt", - "google.com.mx", - "google.com.my", - "google.com.na", - "google.com.ng", - "google.ng", - "google.com.nf", - "google.com.ni", - "google.com.np", - "google.com.om", - "google.com.pa", - "google.com.pe", - "google.com.pg", - "google.com.ph", - "google.com.pk", - "google.com.pr", - "google.com.py", - "google.com.qa", - "google.com.sa", - "google.com.sb", - "google.com.sg", - "google.com.sl", - "google.com.sv", - "google.com.tj", - "google.com.tr", - "google.com.tw", - "google.com.ua", - "google.com.uy", - "google.com.vc", - "google.com.vn", - "google.cat", - "google.cn", - "google.cv", - "google.cz", - "google.de", - "google.dj", - "google.dk", - "google.dm", - "google.dz", - "google.ee", - "google.es", - "google.fi", - "google.fm", - "google.fr", - "google.ga", - "google.ge", - "google.gg", - "google.gl", - "google.gm", - "google.gp", - "google.gr", - "google.gy", - "google.hn", - "google.hr", - "google.ht", - "google.hu", - "google.ie", - "google.im", - "google.iq", - "google.is", - "google.it", - "google.je", - "google.jo", - "google.kg", - "google.ki", - "google.kz", - "google.la", - "google.li", - "google.lk", - "google.lt", - "google.lu", - "google.lv", - "google.md", - "google.me", - "google.mg", - "google.mk", - "google.ml", - "google.mn", - "google.ms", - "google.mu", - "google.mv", - "google.mw", - "google.ne", - "google.nl", - "google.no", - "google.nr", - "google.nu", - "google.pl", - "google.pn", - "google.ps", - "google.pt", - "google.ro", - "google.rs", - "google.ru", - "google.rw", - "google.sc", - "google.se", - "google.sh", - "google.si", - "google.sk", - "google.sm", - "google.sn", - "google.so", - "google.sr", - "google.st", - "google.td", - "google.tg", - "google.tk", - "google.tl", - "google.tm", - "google.tn", - "google.to", - "google.tt", - "google.vg", - "google.vu", - "google.ws" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_serp_short_videos_getShortVideosSearchResults6 fields changed- changed
Input schema / properties / cr / descriptionPrevious value: -"The country code for the country you want to limit the search to."New value: +"The country code for the country you want to limit the search to. Provide one exact documented value (237 allowed), e.g. `countryAF`, `countryAL`." - removed
Input schema / properties / cr / enumRemoved value: -[ - "countryAF", - "countryAL", - "countryDZ", - "countryAS", - "countryAD", - "countryAO", - "countryAI", - "countryAQ", - "countryAG", - "countryAR", - "countryAM", - "countryAW", - "countryAU", - "countryAT", - "countryAZ", - "countryBS", - "countryBH", - "countryBD", - "countryBB", - "countryBY", - "countryBE", - "countryBZ", - "countryBJ", - "countryBM", - "countryBT", - "countryBO", - "countryBA", - "countryBW", - "countryBV", - "countryBR", - "countryIO", - "countryVG", - "countryBN", - "countryBG", - "countryBF", - "countryBI", - "countryKH", - "countryCM", - "countryCA", - "countryCV", - "countryKY", - "countryCF", - "countryTD", - "countryCL", - "countryCN", - "countryCX", - "countryCC", - "countryCO", - "countryKM", - "countryCG", - "countryCD", - "countryCK", - "countryCR", - "countryCI", - "countryHR", - "countryCU", - "countryCY", - "countryCZ", - "countryDK", - "countryDJ", - "countryDM", - "countryDO", - "countryEC", - "countryEG", - "countrySV", - "countryGQ", - "countryER", - "countryEE", - "countrySZ", - "countryET", - "countryFK", - "countryFO", - "countryFJ", - "countryFI", - "countryFR", - "countryGF", - "countryPF", - "countryTF", - "countryGA", - "countryGM", - "countryGE", - "countryDE", - "countryGH", - "countryGI", - "countryGR", - "countryGL", - "countryGD", - "countryGP", - "countryGU", - "countryGT", - "countryGN", - "countryGW", - "countryGY", - "countryHT", - "countryHM", - "countryHN", - "countryHK", - "countryHU", - "countryIS", - "countryIN", - "countryID", - "countryIR", - "countryIQ", - "countryIE", - "countryIL", - "countryIT", - "countryJM", - "countryJP", - "countryJO", - "countryKZ", - "countryKE", - "countryKI", - "countryKW", - "countryKG", - "countryLA", - "countryLV", - "countryLB", - "countryLS", - "countryLR", - "countryLY", - "countryLI", - "countryLT", - "countryLU", - "countryMO", - "countryMG", - "countryMW", - "countryMY", - "countryMV", - "countryML", - "countryMT", - "countryMH", - "countryMQ", - "countryMR", - "countryMU", - "countryYT", - "countryMX", - "countryFM", - "countryMD", - "countryMC", - "countryMN", - "countryMS", - "countryMA", - "countryMZ", - "countryMM", - "countryNA", - "countryNR", - "countryNP", - "countryNL", - "countryNC", - "countryNZ", - "countryNI", - "countryNE", - "countryNG", - "countryNU", - "countryNF", - "countryKP", - "countryMK", - "countryMP", - "countryNO", - "countryOM", - "countryPK", - "countryPW", - "countryPS", - "countryPA", - "countryPG", - "countryPY", - "countryPE", - "countryPH", - "countryPN", - "countryPL", - "countryPT", - "countryPR", - "countryQA", - "countryRE", - "countryRO", - "countryRU", - "countryRW", - "countryWS", - "countrySM", - "countryST", - "countrySA", - "countrySN", - "countryRS", - "countrySC", - "countrySL", - "countrySG", - "countrySK", - "countrySI", - "countrySB", - "countrySO", - "countryZA", - "countryGS", - "countryKR", - "countryES", - "countryLK", - "countrySH", - "countryKN", - "countryLC", - "countryPM", - "countryVC", - "countrySD", - "countrySR", - "countrySJ", - "countrySE", - "countryCH", - "countrySY", - "countryTW", - "countryTJ", - "countryTZ", - "countryTH", - "countryTG", - "countryTK", - "countryTO", - "countryTT", - "countryTN", - "countryTR", - "countryTM", - "countryTC", - "countryTV", - "countryUM", - "countryVI", - "countryUG", - "countryUA", - "countryAE", - "countryGB", - "countryUS", - "countryUY", - "countryUZ", - "countryVU", - "countryVA", - "countryVE", - "countryVN", - "countryWF", - "countryEH", - "countryYE", - "countryZM", - "countryZW" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_travel_flights_getGoogleFlights6 fields changed- changed
Input schema / properties / currency / descriptionPrevious value: -"Parameter defines the currency of the returned prices"New value: +"Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`." - removed
Input schema / properties / currency / enumRemoved value: -[ - "ALL", - "DZD", - "ARS", - "AMD", - "AWG", - "AUD", - "AZN", - "BSD", - "BHD", - "BYN", - "BMD", - "BAM", - "BRL", - "GBP", - "BGN", - "XPF", - "CAD", - "CLP", - "CNY", - "COP", - "CRC", - "CUP", - "CZK", - "DKK", - "DOP", - "EGP", - "EUR", - "GEL", - "HKD", - "HUF", - "ISK", - "INR", - "IDR", - "IRR", - "ILS", - "JMD", - "JPY", - "JOD", - "KZT", - "KWD", - "LBP", - "MKD", - "MYR", - "MXN", - "MDL", - "MAD", - "TWD", - "NZD", - "NOK", - "OMR", - "PKR", - "PAB", - "PEN", - "PHP", - "PLN", - "QAR", - "RON", - "RUB", - "SAR", - "RSD", - "SGD", - "ZAR", - "KRW", - "SEK", - "CHF", - "THB", - "TRY", - "USD", - "UAH", - "VND", - "AED" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_travel_hotels_getGoogleHotels6 fields changed- changed
Input schema / properties / currency / descriptionPrevious value: -"Parameter defines the currency of the returned prices"New value: +"Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`." - removed
Input schema / properties / currency / enumRemoved value: -[ - "ALL", - "DZD", - "ARS", - "AMD", - "AWG", - "AUD", - "AZN", - "BSD", - "BHD", - "BYN", - "BMD", - "BAM", - "BRL", - "GBP", - "BGN", - "XPF", - "CAD", - "CLP", - "CNY", - "COP", - "CRC", - "CUP", - "CZK", - "DKK", - "DOP", - "EGP", - "EUR", - "GEL", - "HKD", - "HUF", - "ISK", - "INR", - "IDR", - "IRR", - "ILS", - "JMD", - "JPY", - "JOD", - "KZT", - "KWD", - "LBP", - "MKD", - "MYR", - "MXN", - "MDL", - "MAD", - "TWD", - "NZD", - "NOK", - "OMR", - "PKR", - "PAB", - "PEN", - "PHP", - "PLN", - "QAR", - "RON", - "RUB", - "SAR", - "RSD", - "SGD", - "ZAR", - "KRW", - "SEK", - "CHF", - "THB", - "TRY", - "USD", - "UAH", - "VND", - "AED" -] - changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_google_trends_search_getTrendsData4 fields changed- changed
Input schema / properties / cat / descriptionPrevious value: -"Category of the search term. The default value is 0 (\"All categories\")."New value: +"Category of the search term. The default value is 0 (\"All categories\"). Provide one exact documented value (1133 allowed), e.g. `0`, `3`." - removed
Input schema / properties / cat / enumRemoved value: -[ - "0", - "3", - "184", - "316", - "1104", - "317", - "319", - "318", - "612", - "1116", - "1108", - "1117", - "1115", - "1113", - "1114", - "569", - "188", - "891", - "1086", - "1273", - "1085", - "614", - "539", - "1173", - "447", - "1174", - "182", - "1095", - "895", - "1180", - "1244", - "1047", - "34", - "1097", - "1101", - "1100", - "1099", - "360", - "1102", - "1098", - "1103", - "1072", - "1094", - "210", - "1145", - "1291", - "615", - "213", - "1106", - "1107", - "1105", - "1310", - "616", - "1096", - "35", - "217", - "586", - "1185", - "587", - "588", - "1022", - "1023", - "589", - "1040", - "42", - "1285", - "218", - "1087", - "1024", - "1025", - "1026", - "216", - "1327", - "1325", - "1326", - "1091", - "1027", - "1028", - "892", - "617", - "220", - "1021", - "215", - "809", - "1186", - "1020", - "585", - "590", - "1037", - "1035", - "1038", - "1036", - "1041", - "893", - "592", - "1030", - "1242", - "1039", - "618", - "593", - "1208", - "1034", - "1033", - "591", - "1287", - "1286", - "1031", - "1032", - "33", - "538", - "449", - "613", - "105", - "935", - "1222", - "978", - "320", - "574", - "211", - "979", - "301", - "575", - "23", - "894", - "1243", - "581", - "36", - "1055", - "1187", - "359", - "358", - "1193", - "1111", - "1194", - "357", - "1110", - "1050", - "1049", - "1112", - "1048", - "24", - "477", - "1361", - "1195", - "653", - "1300", - "654", - "655", - "656", - "1167", - "439", - "573", - "1384", - "306", - "308", - "1383", - "307", - "577", - "1315", - "47", - "1190", - "1191", - "1140", - "1213", - "1013", - "1214", - "1215", - "806", - "810", - "1380", - "1317", - "273", - "148", - "1147", - "1212", - "610", - "1057", - "1056", - "1058", - "815", - "820", - "821", - "1059", - "822", - "1060", - "823", - "826", - "833", - "834", - "836", - "1061", - "838", - "840", - "896", - "842", - "843", - "1062", - "845", - "1378", - "1063", - "846", - "848", - "1064", - "1065", - "849", - "850", - "1066", - "851", - "852", - "853", - "1067", - "854", - "855", - "1377", - "856", - "857", - "858", - "859", - "1068", - "897", - "860", - "861", - "1070", - "863", - "1069", - "898", - "865", - "867", - "1294", - "968", - "170", - "138", - "89", - "1217", - "1218", - "1188", - "230", - "1189", - "794", - "1216", - "1269", - "438", - "473", - "1268", - "1267", - "803", - "44", - "1219", - "239", - "1220", - "238", - "147", - "143", - "244", - "234", - "242", - "93", - "144", - "185", - "98", - "1155", - "94", - "241", - "611", - "146", - "235", - "145", - "557", - "236", - "22", - "690", - "355", - "1183", - "608", - "540", - "1184", - "412", - "565", - "1177", - "12", - "25", - "83", - "1309", - "327", - "84", - "328", - "356", - "669", - "668", - "46", - "748", - "747", - "749", - "621", - "750", - "751", - "752", - "799", - "1138", - "1160", - "1139", - "620", - "905", - "784", - "1179", - "1240", - "1241", - "1164", - "1163", - "1165", - "1159", - "336", - "157", - "723", - "331", - "724", - "330", - "338", - "721", - "1360", - "1359", - "722", - "801", - "329", - "1162", - "334", - "335", - "340", - "280", - "726", - "800", - "28", - "337", - "95", - "1375", - "333", - "1330", - "1331", - "1332", - "1333", - "494", - "495", - "718", - "576", - "719", - "720", - "1076", - "725", - "288", - "670", - "671", - "672", - "673", - "674", - "48", - "650", - "827", - "828", - "829", - "830", - "831", - "651", - "652", - "686", - "233", - "658", - "954", - "659", - "657", - "660", - "1307", - "1349", - "77", - "341", - "343", - "342", - "955", - "956", - "957", - "121", - "816", - "287", - "1152", - "839", - "835", - "837", - "49", - "661", - "606", - "255", - "1176", - "332", - "1204", - "1199", - "841", - "844", - "551", - "1200", - "727", - "552", - "566", - "50", - "662", - "664", - "289", - "354", - "1150", - "663", - "665", - "291", - "290", - "1306", - "1245", - "1347", - "666", - "667", - "5", - "30", - "717", - "741", - "226", - "740", - "496", - "1321", - "1322", - "1323", - "1318", - "1320", - "1319", - "729", - "312", - "487", - "493", - "728", - "309", - "739", - "310", - "1277", - "314", - "315", - "344", - "78", - "361", - "1396", - "227", - "1158", - "91", - "1192", - "362", - "1324", - "1046", - "228", - "899", - "1043", - "1044", - "1045", - "229", - "1393", - "1157", - "1334", - "305", - "1354", - "1356", - "1355", - "1357", - "492", - "1394", - "1395", - "434", - "900", - "743", - "742", - "744", - "745", - "746", - "311", - "488", - "1298", - "347", - "346", - "1279", - "31", - "731", - "802", - "730", - "732", - "733", - "734", - "32", - "498", - "1341", - "1358", - "1346", - "1344", - "1345", - "225", - "804", - "901", - "807", - "808", - "304", - "902", - "1109", - "532", - "497", - "1089", - "1092", - "1088", - "805", - "486", - "1090", - "313", - "303", - "736", - "735", - "1382", - "737", - "224", - "1142", - "567", - "785", - "7", - "278", - "1283", - "37", - "279", - "468", - "813", - "811", - "812", - "466", - "814", - "903", - "1282", - "38", - "467", - "249", - "465", - "107", - "904", - "619", - "71", - "277", - "404", - "406", - "405", - "906", - "122", - "907", - "908", - "909", - "910", - "825", - "911", - "912", - "913", - "914", - "915", - "297", - "560", - "916", - "276", - "917", - "918", - "8", - "919", - "920", - "921", - "922", - "39", - "923", - "924", - "41", - "1311", - "925", - "926", - "927", - "928", - "1343", - "381", - "929", - "930", - "931", - "932", - "933", - "1342", - "1146", - "1290", - "1397", - "936", - "937", - "622", - "938", - "939", - "940", - "45", - "623", - "624", - "499", - "1239", - "1238", - "419", - "625", - "626", - "628", - "429", - "629", - "630", - "1211", - "571", - "1328", - "1329", - "941", - "638", - "559", - "632", - "1262", - "421", - "1263", - "817", - "942", - "818", - "819", - "631", - "824", - "627", - "420", - "633", - "254", - "252", - "1253", - "1256", - "251", - "1352", - "1353", - "256", - "634", - "250", - "635", - "943", - "944", - "500", - "253", - "945", - "636", - "202", - "437", - "639", - "640", - "641", - "642", - "418", - "649", - "456", - "457", - "643", - "237", - "245", - "645", - "248", - "646", - "947", - "644", - "946", - "195", - "198", - "647", - "558", - "401", - "536", - "1236", - "257", - "1351", - "1350", - "1237", - "1235", - "246", - "1224", - "648", - "65", - "64", - "1016", - "189", - "1276", - "364", - "284", - "1230", - "458", - "688", - "568", - "462", - "542", - "461", - "786", - "66", - "882", - "883", - "379", - "380", - "563", - "884", - "885", - "886", - "607", - "887", - "888", - "889", - "890", - "119", - "1278", - "1009", - "787", - "999", - "541", - "977", - "70", - "100", - "323", - "99", - "324", - "678", - "1270", - "1246", - "1274", - "1078", - "1123", - "1079", - "1275", - "1124", - "1271", - "1125", - "1122", - "293", - "502", - "503", - "676", - "1002", - "459", - "1305", - "689", - "118", - "11", - "948", - "1365", - "1366", - "1369", - "1367", - "1368", - "472", - "949", - "269", - "271", - "1293", - "1292", - "1371", - "270", - "1363", - "272", - "1362", - "1370", - "158", - "950", - "832", - "1232", - "1153", - "1175", - "1348", - "137", - "951", - "120", - "1373", - "1364", - "1372", - "471", - "952", - "953", - "13", - "385", - "1182", - "394", - "1381", - "1379", - "386", - "382", - "1171", - "1170", - "390", - "1071", - "485", - "1234", - "383", - "501", - "104", - "384", - "389", - "392", - "302", - "326", - "422", - "53", - "675", - "958", - "74", - "1289", - "1015", - "372", - "367", - "1012", - "1266", - "791", - "792", - "371", - "1118", - "373", - "1308", - "700", - "1388", - "369", - "1229", - "60", - "959", - "960", - "961", - "19", - "76", - "1075", - "962", - "963", - "1387", - "1385", - "1221", - "964", - "1386", - "965", - "1161", - "1316", - "1314", - "1313", - "521", - "702", - "966", - "555", - "75", - "427", - "423", - "1272", - "967", - "424", - "522", - "426", - "701", - "969", - "970", - "366", - "1247", - "1248", - "1250", - "1288", - "1249", - "793", - "166", - "704", - "1181", - "1312", - "1284", - "168", - "535", - "705", - "508", - "511", - "706", - "16", - "112", - "507", - "1259", - "572", - "408", - "396", - "398", - "410", - "1203", - "1201", - "1202", - "409", - "1077", - "63", - "1209", - "299", - "504", - "55", - "546", - "102", - "321", - "191", - "43", - "1223", - "578", - "847", - "582", - "275", - "529", - "972", - "14", - "677", - "56", - "579", - "547", - "556", - "1257", - "549", - "528", - "580", - "1205", - "682", - "973", - "113", - "681", - "171", - "550", - "548", - "683", - "1131", - "1304", - "1132", - "400", - "1231", - "58", - "974", - "1374", - "115", - "403", - "402", - "1134", - "1133", - "1261", - "1135", - "1260", - "154", - "679", - "680", - "59", - "448", - "862", - "864", - "866", - "868", - "869", - "1258", - "1296", - "1251", - "870", - "975", - "101", - "1340", - "298", - "54", - "57", - "82", - "1255", - "1166", - "1280", - "1127", - "1281", - "976", - "1301", - "703", - "1121", - "509", - "1302", - "1303", - "510", - "520", - "543", - "29", - "378", - "1178", - "687", - "463", - "425", - "96", - "1080", - "1081", - "533", - "527", - "377", - "980", - "691", - "692", - "374", - "693", - "1137", - "694", - "1136", - "695", - "1084", - "1014", - "268", - "685", - "474", - "433", - "609", - "1093", - "108", - "1264", - "1265", - "375", - "1233", - "174", - "435", - "440", - "788", - "981", - "982", - "1226", - "505", - "1227", - "1299", - "1168", - "1254", - "443", - "1169", - "441", - "442", - "231", - "1141", - "436", - "1252", - "444", - "445", - "446", - "18", - "68", - "1228", - "983", - "984", - "428", - "985", - "124", - "350", - "986", - "987", - "988", - "989", - "697", - "990", - "991", - "992", - "993", - "994", - "995", - "530", - "996", - "997", - "292", - "61", - "69", - "97", - "365", - "450", - "451", - "353", - "352", - "1143", - "1144", - "696", - "73", - "531", - "263", - "1083", - "1210", - "123", - "432", - "1225", - "20", - "1073", - "514", - "515", - "516", - "512", - "554", - "1206", - "1207", - "998", - "1000", - "261", - "519", - "262", - "1376", - "1126", - "518", - "180", - "1082", - "1001", - "258", - "259", - "264", - "534", - "296", - "1017", - "260", - "517", - "294", - "699", - "265", - "1149", - "1148", - "1198", - "513", - "67", - "203", - "708", - "205", - "1339", - "206", - "179", - "1003", - "1004", - "707", - "1389", - "1005", - "1390", - "1391", - "208", - "1074", - "1006", - "1120", - "1119", - "1007", - "1008", - "1010", - "1392", - "1019", - "1011" -] - changed
Input schema / properties / geo / descriptionPrevious value: -"Specifies the location for the search. Defaults to Worldwide if not set or empty."New value: +"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`." - removed
Input schema / properties / geo / enumRemoved value: -[ - "AF", - "AF-BDS", - "AF-BDG", - "AF-BGL", - "AF-BAL", - "AF-BAM", - "AF-DAY", - "AF-FRA", - "AF-FYB", - "AF-GHA", - "AF-GHO", - "AF-HEL", - "AF-HER", - "AF-JOW", - "AF-KAB", - "AF-KAN", - "AF-KAP", - "AF-KHO", - "AF-KNR", - "AF-KDZ", - "AF-LAG", - "AF-LOG", - "AF-NAN", - "AF-NIM", - "AF-NUR", - "AF-URU", - "AF-PIA", - "AF-PKA", - "AF-PAN", - "AF-PAR", - "AF-SAM", - "AF-SAR", - "AF-TAK", - "AF-WAR", - "AF-ZAB", - "AX", - "AL", - "AL-01", - "AL-09", - "AL-02", - "AL-03", - "AL-04", - "AL-05", - "AL-06", - "AL-07", - "AL-08", - "AL-10", - "AL-11", - "AL-12", - "DZ", - "DZ-01", - "DZ-44", - "DZ-46", - "DZ-16", - "DZ-23", - "DZ-05", - "DZ-08", - "DZ-06", - "DZ-07", - "DZ-09", - "DZ-34", - "DZ-10", - "DZ-35", - "DZ-02", - "DZ-25", - "DZ-17", - "DZ-32", - "DZ-39", - "DZ-36", - "DZ-47", - "DZ-24", - "DZ-33", - "DZ-18", - "DZ-40", - "DZ-03", - "DZ-28", - "DZ-29", - "DZ-26", - "DZ-43", - "DZ-27", - "DZ-45", - "DZ-31", - "DZ-30", - "DZ-04", - "DZ-11", - "DZ-48", - "DZ-20", - "DZ-19", - "DZ-22", - "DZ-21", - "DZ-41", - "DZ-12", - "DZ-14", - "DZ-37", - "DZ-42", - "DZ-38", - "DZ-15", - "DZ-13", - "AS", - "AD", - "AD-07", - "AD-02", - "AD-03", - "AD-08", - "AD-04", - "AD-05", - "AD-06", - "AO", - "AO-BGO", - "AO-BGU", - "AO-BIE", - "AO-CAB", - "AO-CCU", - "AO-CNO", - "AO-CUS", - "AO-CNN", - "AO-HUA", - "AO-HUI", - "AO-LUA", - "AO-LNO", - "AO-LSU", - "AO-MAL", - "AO-MOX", - "AO-NAM", - "AO-UIG", - "AO-ZAI", - "AI", - "AQ", - "AG", - "AG-10", - "AG-11", - "VC-04", - "GD-04", - "AG-05", - "AG-06", - "BB-09", - "BB-10", - "AR", - "AR-C", - "AR-B", - "AR-K", - "AR-H", - "AR-U", - "CO-COR", - "AR-W", - "AR-E", - "AR-P", - "AR-Y", - "AR-L", - "AR-F", - "AR-M", - "AR-N", - "AR-Q", - "AR-R", - "AR-A", - "DO-22", - "AR-D", - "AR-Z", - "AR-S", - "AR-G", - "AR-V", - "AR-T", - "AM", - "AM-AG", - "AM-AR", - "AM-AV", - "AM-GR", - "AM-KT", - "AM-LO", - "AM-SH", - "AM-SU", - "AM-TV", - "AM-VD", - "AM-ER", - "AW", - "AU", - "AU-ACT", - "AU-NSW", - "AU-NT", - "AU-QLD", - "AU-SA", - "AU-TAS", - "AU-VIC", - "AU-WA", - "AT", - "AT-1", - "AT-2", - "AT-3", - "AT-5", - "AT-6", - "AT-7", - "AT-4", - "AT-9", - "AT-8", - "AZ", - "AZ-NX", - "BS", - "BS-AK", - "BS-BY", - "BS-BI", - "BS-BP", - "BS-CI", - "BS-CO", - "BS-CS", - "BS-CE", - "BS-CK", - "BS-EG", - "BS-EX", - "BS-FP", - "BS-GC", - "BS-HI", - "BS-HT", - "BS-IN", - "BS-LI", - "BS-MC", - "BS-MG", - "BS-MI", - "BS-NO", - "BS-NS", - "BS-NE", - "BS-RI", - "BS-RC", - "SV-SS", - "BS-SO", - "BS-SA", - "BS-SE", - "BS-SW", - "BS-WG", - "BH", - "BH-13", - "BH-16", - "BH-15", - "BH-17", - "BH-14", - "BD", - "BD-A", - "BD-B", - "BD-C", - "BD-D", - "BD-E", - "BD-F", - "BD-G", - "BB", - "BB-01", - "VC-02", - "BB-04", - "BB-06", - "BB-07", - "BB-08", - "JM-03", - "BY", - "BY-BR", - "BY-HO", - "BY-HR", - "BY-MI", - "BY-MA", - "BY-VI", - "BE", - "BE-BRU", - "BE-VLG", - "BE-WAL", - "BZ-BZ", - "BZ-CY", - "BZ-CZL", - "BZ-OW", - "BZ-SC", - "BZ-TOL", - "BJ", - "BJ-AL", - "BJ-AK", - "BJ-AQ", - "BJ-BO", - "BJ-CO", - "BJ-DO", - "BJ-KO", - "CM-LT", - "BJ-MO", - "BJ-OU", - "NG-PL", - "BJ-ZO", - "BM", - "BT", - "BT-33", - "BT-12", - "BT-22", - "BT-GA", - "BT-13", - "BT-44", - "BT-42", - "BT-11", - "BT-43", - "BT-23", - "BT-45", - "BT-14", - "BT-31", - "BT-15", - "BT-41", - "BT-TY", - "BT-32", - "BT-21", - "BT-24", - "BT-34", - "BO", - "BO-B", - "BO-H", - "BO-C", - "BO-L", - "BO-O", - "BO-N", - "BO-P", - "CV-CR", - "BO-T", - "BA", - "BA-BRC", - "BA-BIH", - "BA-SRP", - "BW", - "ZM-02", - "BW-GH", - "BW-KG", - "BW-KL", - "BW-KW", - "ZA-NW", - "BW-NE", - "BW-SE", - "ZM-07", - "BV", - "BR", - "BR-DF", - "BR-AC", - "BR-AL", - "BR-AP", - "BR-AM", - "BR-BA", - "BR-CE", - "BR-ES", - "BR-GO", - "BR-MA", - "BR-MT", - "BR-MS", - "BR-MG", - "BR-PA", - "BR-PB", - "BR-PR", - "BR-PE", - "BR-PI", - "BR-RJ", - "BR-RN", - "BR-RS", - "BR-RO", - "BR-RR", - "BR-SC", - "BR-SP", - "BR-SE", - "BR-TO", - "IO", - "VG", - "BN", - "BN-BE", - "BN-BM", - "BN-TE", - "BN-TU", - "BG", - "BG-01", - "BG-02", - "BG-08", - "BG-07", - "BG-26", - "BG-28", - "BG-09", - "BG-10", - "BG-11", - "BG-12", - "BG-13", - "BG-14", - "BG-15", - "BG-16", - "BG-17", - "BG-18", - "BG-27", - "BG-19", - "BG-20", - "BG-21", - "BG-22", - "BG-23", - "BG-24", - "BG-25", - "BG-03", - "BG-04", - "BG-05", - "BG-06", - "BF", - "BF-01", - "BF-02", - "HT-CE", - "BF-04", - "BF-05", - "BF-06", - "BF-07", - "BF-08", - "BF-09", - "HT-ND", - "BF-11", - "BF-12", - "BF-13", - "BI", - "BI-BB", - "BI-BM", - "BI-BL", - "BI-BR", - "BI-CA", - "BI-CI", - "BI-GI", - "BI-KR", - "BI-KY", - "BI-KI", - "BI-MA", - "BI-MU", - "BI-MY", - "BI-MW", - "BI-NG", - "BI-RT", - "BI-RY", - "KH", - "KH-1", - "KH-2", - "KH-3", - "KH-4", - "KH-5", - "KH-6", - "KH-7", - "KH-8", - "KH-23", - "KH-9", - "KH-10", - "KH-11", - "KH-22", - "KH-24", - "KH-12", - "KH-18", - "KH-13", - "KH-14", - "KH-15", - "KH-16", - "KH-17", - "KH-19", - "KH-20", - "KH-21", - "KH-25", - "CM", - "CM-AD", - "CM-ES", - "CM-EN", - "LB-AS", - "CM-NW", - "LB-JA", - "CM-SW", - "CM-OU", - "CA", - "CA-AB", - "CA-BC", - "CA-MB", - "CA-NB", - "CA-NL", - "CA-NT", - "CA-NS", - "CA-NU", - "CA-ON", - "CA-PE", - "CA-QC", - "CA-SK", - "CA-YT", - "CV", - "CV-BV", - "CV-BR", - "CV-MA", - "CV-MO", - "CV-PA", - "CV-PN", - "CV-PR", - "CV-RB", - "CV-RG", - "CV-RS", - "CV-SL", - "CV-CA", - "CV-CF", - "CV-SD", - "CV-SF", - "CV-SO", - "CV-SM", - "CV-SS", - "CV-SV", - "CV-TA", - "CV-TS", - "BQ", - "BQ-BO", - "BQ-SA", - "BQ-SE", - "KY", - "CF", - "CF-BB", - "CF-BGF", - "CF-BK", - "CF-HM", - "CF-HK", - "CF-KG", - "CF-LB", - "CF-HS", - "CF-MB", - "CF-KB", - "CF-NM", - "CF-MP", - "CF-UK", - "CF-AC", - "CF-OP", - "CF-SE", - "CF-VK", - "TD", - "TD-BG", - "TD-BA", - "TD-BO", - "TD-CB", - "TD-EN", - "TD-GR", - "TD-HL", - "TD-KA", - "TD-LC", - "TD-LO", - "TD-LR", - "TD-MA", - "TD-ME", - "TD-MO", - "TD-MC", - "TD-ND", - "TD-OD", - "TD-SI", - "TD-TA", - "TD-TI", - "TD-WF", - "TD-SA", - "CL", - "CL-AN", - "CL-AR", - "CL-AP", - "CL-AT", - "CL-BI", - "CL-CO", - "CL-LL", - "CL-LR", - "CL-MA", - "CL-ML", - "CL-LI", - "CL-RM", - "CL-TA", - "CL-VS", - "CL-AI", - "CN", - "CN-34", - "CN-11", - "CN-50", - "CN-35", - "CN-62", - "CN-44", - "CN-45", - "CN-52", - "CN-46", - "CN-13", - "CN-23", - "CN-41", - "CN-42", - "CN-43", - "CN-15", - "CN-32", - "CN-36", - "CN-22", - "CN-21", - "CN-64", - "CN-63", - "CN-61", - "CN-37", - "CN-31", - "CN-14", - "CN-51", - "CN-12", - "CN-54", - "CN-65", - "CN-53", - "CN-33", - "CX", - "CC", - "CO", - "CO-AMA", - "CO-ANT", - "CO-ARA", - "CO-ATL", - "CO-DC", - "CO-BOL", - "CO-BOY", - "CO-CAL", - "CO-CAQ", - "CO-CAS", - "CO-CAU", - "CO-CES", - "CO-CHO", - "CO-CUN", - "CO-GUA", - "CO-GUV", - "CO-HUI", - "CO-LAG", - "CO-MAG", - "CO-MET", - "CO-NAR", - "CO-NSA", - "CO-PUT", - "CO-QUI", - "CO-RIS", - "CO-SAP", - "CO-SAN", - "VE-R", - "CO-TOL", - "CO-VAC", - "CO-VAU", - "CO-VID", - "KM", - "KM-M", - "KM-G", - "KM-A", - "CG", - "CG-11", - "CG-BZV", - "CG-8", - "CG-15", - "CG-5", - "CG-2", - "CG-7", - "CG-9", - "TG-P", - "CG-16", - "CG-12", - "CG-13", - "CD", - "CD-BN", - "CD-BC", - "CD-EQ", - "CD-KW", - "CD-KE", - "CD-KA", - "CD-KN", - "CD-MA", - "CD-NK", - "CD-OR", - "CD-SK", - "CK", - "CR", - "CR-A", - "CR-G", - "CR-H", - "CR-L", - "CR-C", - "CR-P", - "CR-SJ", - "CI", - "CI-16", - "CI-17", - "CI-09", - "CI-10", - "CI-06", - "CI-18", - "CI-02", - "CI-07", - "CI-01", - "CI-12", - "CI-19", - "CI-05", - "CI-11", - "TG-S", - "CI-15", - "CI-13", - "CI-04", - "CI-14", - "CI-08", - "HR", - "HR-07", - "HR-12", - "HR-21", - "HR-19", - "HR-18", - "HR-04", - "HR-06", - "HR-02", - "HR-09", - "HR-20", - "HR-14", - "HR-11", - "HR-08", - "HR-15", - "HR-03", - "HR-17", - "HR-05", - "HR-10", - "HR-16", - "HR-13", - "HR-01", - "CU", - "CU-15", - "CU-09", - "CU-08", - "CU-06", - "CU-12", - "CU-14", - "CU-03", - "CU-11", - "CU-99", - "CU-10", - "CU-04", - "CU-16", - "CU-01", - "CU-07", - "CU-13", - "CU-05", - "CW", - "CY", - "CY-04", - "CY-06", - "CY-03", - "CY-02", - "CY-01", - "CY-05", - "CZ", - "CZ-ST", - "CZ-KR", - "CZ-KA", - "CZ-LI", - "CZ-MO", - "CZ-OL", - "CZ-PA", - "CZ-PL", - "CZ-PR", - "CZ-JC", - "CZ-JM", - "CZ-US", - "CZ-VY", - "CZ-ZL", - "DK", - "DK-84", - "DK-82", - "DK-81", - "DK-83", - "DK-85", - "DJ-DJ", - "DJ-AS", - "DJ-AR", - "DJ-DI", - "DJ-OB", - "DJ-TA", - "DM", - "JM-02", - "DM-03", - "DM-04", - "DM-05", - "DM-06", - "DM-07", - "DM-08", - "DM-09", - "DM-10", - "DM-11", - "DO", - "DO-02", - "DO-03", - "DO-04", - "DO-05", - "DO-01", - "DO-06", - "DO-08", - "DO-07", - "DO-09", - "DO-30", - "DO-19", - "DO-10", - "DO-11", - "DO-12", - "DO-13", - "DO-14", - "DO-28", - "DO-15", - "DO-29", - "DO-16", - "DO-17", - "DO-18", - "DO-20", - "DO-21", - "DO-31", - "DO-23", - "DO-24", - "DO-25", - "DO-26", - "DO-32", - "DO-27", - "EC", - "EC-A", - "EC-B", - "EC-F", - "EC-C", - "EC-H", - "EC-X", - "EC-O", - "EC-E", - "EC-W", - "EC-G", - "EC-I", - "EC-L", - "EC-R", - "EC-M", - "EC-S", - "EC-D", - "EC-Y", - "EC-P", - "EC-N", - "EC-SE", - "EC-SD", - "EC-U", - "EC-T", - "EC-Z", - "EG", - "EG-KB", - "EG-ALX", - "EG-SHR", - "EG-AST", - "EG-ASN", - "EG-BNS", - "EG-C", - "EG-DK", - "EG-DT", - "EG-BH", - "EG-FYM", - "EG-GH", - "EG-GZ", - "EG-IS", - "EG-KFS", - "EG-LX", - "EG-MT", - "EG-MN", - "EG-MNF", - "EG-WAD", - "EG-SIN", - "EG-PTS", - "EG-KN", - "EG-BA", - "EG-SHG", - "EG-JS", - "EG-SUZ", - "SV", - "SV-AH", - "SV-CA", - "SV-CH", - "SV-CU", - "PE-LAL", - "HN-LP", - "SV-UN", - "SV-MO", - "SV-SM", - "SV-SV", - "SV-SA", - "SV-SO", - "SV-US", - "GQ", - "GQ-AN", - "GQ-BN", - "GQ-BS", - "GQ-CS", - "GQ-KN", - "GQ-LI", - "GQ-WN", - "ER", - "ER-AN", - "ER-GB", - "ER-SK", - "ER-DK", - "EE", - "EE-37", - "EE-39", - "EE-44", - "EE-51", - "EE-49", - "EE-57", - "EE-59", - "EE-67", - "EE-65", - "EE-70", - "EE-74", - "EE-78", - "EE-82", - "EE-84", - "EE-86", - "SZ", - "SZ-HH", - "SZ-LU", - "SZ-MA", - "SZ-SH", - "ET", - "ET-AA", - "ET-AF", - "ET-AM", - "ET-BE", - "ET-DD", - "ET-GA", - "ET-HA", - "ET-OR", - "ET-SO", - "ET-SN", - "ET-TI", - "FK", - "FO", - "FJ", - "FJ-C", - "FJ-E", - "FJ-N", - "FJ-R", - "FJ-W", - "FI", - "FI-08", - "FI-07", - "FI-05", - "FI-09", - "FI-10", - "FI-13", - "FI-14", - "FI-15", - "FI-12", - "FI-16", - "FI-11", - "FI-17", - "FI-02", - "FI-03", - "FI-04", - "FI-19", - "FI-06", - "FI-18", - "FR", - "FR-A", - "FR-B", - "FR-C", - "FR-E", - "FR-D", - "FR-F", - "FR-G", - "FR-H", - "FR-I", - "FR-J", - "FR-K", - "FR-L", - "FR-M", - "FR-P", - "FR-N", - "FR-O", - "FR-R", - "FR-S", - "FR-T", - "FR-U", - "FR-V", - "FR-Q", - "GF", - "PF", - "TF", - "GA", - "GA-1", - "GA-2", - "GA-3", - "GA-4", - "GA-5", - "GA-6", - "GA-7", - "GA-8", - "GA-9", - "GM", - "GM-B", - "GM-M", - "GM-L", - "GM-N", - "GM-U", - "GM-W", - "US-GA", - "GE-AB", - "GE-AJ", - "GE-GU", - "GE-IM", - "GE-KA", - "GE-KK", - "GE-MM", - "GE-RL", - "GE-SZ", - "GE-SJ", - "GE-SK", - "GE-TB", - "DE", - "DE-BW", - "DE-BY", - "DE-BE", - "DE-BB", - "DE-HB", - "DE-HH", - "DE-HE", - "DE-NI", - "DE-MV", - "DE-NW", - "DE-RP", - "DE-SL", - "DE-SN", - "DE-ST", - "DE-SH", - "DE-TH", - "GH", - "GH-AH", - "GH-BA", - "UG-E", - "GH-AA", - "UG-N", - "GH-UE", - "GH-UW", - "GH-TV", - "UG-W", - "GI", - "GR", - "GL", - "GL-KU", - "GL-QA", - "GL-QE", - "GL-SM", - "GD", - "GD-10", - "VC-03", - "GD-05", - "VC-05", - "GP", - "GU", - "GT", - "GT-AV", - "GT-BV", - "GT-CM", - "GT-CQ", - "GT-PR", - "GT-ES", - "GT-GU", - "GT-HU", - "GT-IZ", - "GT-JA", - "GT-JU", - "GT-PE", - "GT-QZ", - "GT-QC", - "GT-RE", - "GT-SA", - "GT-SM", - "GT-SR", - "GT-SO", - "GT-SU", - "GT-TO", - "GT-ZA", - "GG", - "GN", - "GN-B", - "GN-C", - "GN-F", - "GN-K", - "GN-D", - "GN-L", - "GN-M", - "GN-N", - "GW", - "GW-BA", - "GW-BM", - "GW-BS", - "GW-BL", - "GW-CA", - "GW-GA", - "GW-OI", - "GW-QU", - "GW-TO", - "GY", - "GY-BA", - "GY-CU", - "GY-DE", - "GY-EB", - "GY-ES", - "GY-MA", - "GY-PM", - "GY-PT", - "GY-UD", - "GY-UT", - "HT", - "HT-AR", - "HT-GA", - "HT-NI", - "HT-NE", - "HT-NO", - "HT-OU", - "HT-SD", - "HT-SE", - "HM", - "HN", - "HN-AT", - "HN-IB", - "HN-CH", - "HN-CL", - "HN-CM", - "HN-CP", - "HN-CR", - "HN-EP", - "HN-FM", - "HN-GD", - "HN-IN", - "HN-LE", - "HN-OC", - "HN-OL", - "HN-SB", - "HN-VA", - "HN-YO", - "HK", - "HU", - "HU-BK", - "HU-BA", - "HU-BE", - "HU-BZ", - "HU-BU", - "HU-CS", - "HU-FE", - "HU-GS", - "HU-HB", - "HU-HE", - "HU-JN", - "HU-KE", - "HU-NO", - "HU-PE", - "HU-SO", - "HU-SZ", - "HU-TO", - "HU-VA", - "HU-VE", - "HU-ZA", - "IS", - "IS-1", - "IS-6", - "IS-5", - "IS-2", - "IS-4", - "IN", - "IN-AN", - "IN-AP", - "IN-AR", - "IN-AS", - "IN-BR", - "IN-CH", - "IN-CT", - "IN-DN", - "IN-DD", - "IN-DL", - "IN-GA", - "IN-GJ", - "IN-HR", - "IN-HP", - "IN-JK", - "IN-JH", - "IN-KA", - "IN-KL", - "IN-LD", - "IN-MP", - "IN-MH", - "IN-MN", - "IN-ML", - "IN-MZ", - "IN-NL", - "IN-OR", - "IN-PY", - "PK-PB", - "IN-RJ", - "IN-SK", - "IN-TN", - "IN-TG", - "IN-TR", - "IN-UP", - "IN-UT", - "IN-WB", - "ID", - "ID-AC", - "ID-BA", - "ID-BB", - "ID-BT", - "ID-BE", - "ID-JT", - "ID-KT", - "ID-ST", - "ID-JI", - "ID-KI", - "ID-NT", - "ID-GO", - "ID-JA", - "ID-LA", - "ID-MA", - "ID-KU", - "ID-MU", - "ID-SA", - "ID-SU", - "ID-PA", - "ID-RI", - "ID-KR", - "ID-SG", - "ID-KS", - "ID-SN", - "ID-SS", - "ID-JK", - "ID-YO", - "ID-JB", - "ID-KB", - "ID-NB", - "ID-PB", - "ID-SR", - "ID-SB", - "IR", - "IR-32", - "IR-03", - "IR-06", - "IR-08", - "IR-01", - "IR-14", - "IR-19", - "IR-27", - "IR-24", - "IR-23", - "IR-05", - "IR-04", - "IR-15", - "IR-17", - "IR-30", - "IR-10", - "IR-18", - "IR-16", - "IR-20", - "IR-22", - "IR-21", - "IR-31", - "IR-28", - "IR-26", - "IR-12", - "IR-13", - "IR-29", - "IR-07", - "IR-02", - "IR-25", - "IR-11", - "IQ", - "IQ-AN", - "IQ-MU", - "IQ-QA", - "IQ-NA", - "IQ-BB", - "IQ-BG", - "IQ-BA", - "IQ-DQ", - "IQ-DI", - "IQ-DA", - "IQ-AR", - "IQ-KA", - "IQ-TS", - "IQ-MA", - "IQ-NI", - "IQ-SD", - "IQ-SU", - "IQ-WA", - "IE", - "IM", - "IL", - "IL-M", - "IL-HA", - "IL-JM", - "IL-Z", - "IL-D", - "IL-TA", - "IT", - "IT-65", - "IT-23", - "IT-75", - "IT-77", - "IT-78", - "IT-72", - "IT-45", - "IT-36", - "IT-62", - "IT-42", - "IT-25", - "IT-57", - "IT-67", - "IT-21", - "IT-88", - "IT-82", - "IT-32", - "IT-52", - "IT-55", - "IT-34", - "JM", - "JM-13", - "JM-09", - "JM-01", - "JM-12", - "JM-04", - "JM-06", - "JM-14", - "JM-11", - "JM-08", - "JM-05", - "JM-07", - "JM-10", - "JP", - "JP-23", - "JP-05", - "JP-02", - "JP-12", - "JP-38", - "JP-18", - "JP-40", - "JP-07", - "JP-21", - "JP-10", - "JP-34", - "JP-01", - "JP-28", - "JP-08", - "JP-17", - "JP-03", - "JP-37", - "JP-46", - "JP-14", - "JP-39", - "JP-43", - "JP-26", - "JP-24", - "JP-04", - "JP-45", - "JP-20", - "JP-42", - "JP-29", - "JP-15", - "JP-44", - "JP-33", - "JP-47", - "JP-27", - "JP-41", - "JP-11", - "JP-25", - "JP-32", - "JP-22", - "JP-09", - "JP-36", - "JP-13", - "JP-31", - "JP-16", - "JP-30", - "JP-06", - "JP-35", - "JP-19", - "JE", - "JO", - "JO-AJ", - "JO-AM", - "JO-AQ", - "JO-BA", - "JO-IR", - "JO-JA", - "JO-KA", - "JO-MN", - "JO-MD", - "JO-MA", - "JO-AT", - "JO-AZ", - "KZ", - "KZ-AKM", - "KZ-AKT", - "KZ-ALM", - "KZ-ATY", - "KZ-VOS", - "KZ-ZHA", - "KZ-KAR", - "KZ-KUS", - "KZ-KZY", - "KZ-MAN", - "KZ-SEV", - "KZ-PAV", - "KZ-YUZ", - "KZ-ZAP", - "KE", - "KI", - "KI-G", - "KI-L", - "KI-P", - "XK", - "KW", - "KW-AH", - "KW-KU", - "KW-FA", - "KW-JA", - "KW-HA", - "KW-MU", - "KG", - "KG-B", - "KG-C", - "KG-J", - "KG-N", - "KG-O", - "KG-T", - "KG-Y", - "LA", - "LA-AT", - "LA-BK", - "LA-BL", - "LA-CH", - "LA-HO", - "LA-KH", - "LA-LP", - "LA-LM", - "LA-OU", - "LA-PH", - "LA-SL", - "LA-SV", - "LA-XA", - "LA-VI", - "LA-VT", - "LA-XE", - "LA-XI", - "LV", - "LV-011", - "LV-001", - "LV-002", - "LV-003", - "LV-004", - "LV-005", - "LV-006", - "LV-007", - "LV-008", - "LV-009", - "LV-010", - "LV-012", - "LV-013", - "LV-014", - "LV-015", - "LV-016", - "LV-017", - "LV-018", - "LV-019", - "LV-020", - "LV-022", - "LV-021", - "LV-023", - "LV-024", - "LV-DGV", - "LV-025", - "LV-026", - "LV-027", - "LV-028", - "LV-029", - "LV-030", - "LV-031", - "LV-032", - "LV-033", - "LV-034", - "LV-035", - "LV-036", - "LV-037", - "LV-038", - "LV-039", - "LV-040", - "LV-JKB", - "LV-042", - "LV-JEL", - "LV-041", - "LV-JUR", - "LV-043", - "LV-044", - "LV-051", - "LV-052", - "LV-045", - "LV-046", - "LV-047", - "LV-048", - "LV-049", - "LV-050", - "LV-053", - "LV-LPX", - "LV-055", - "LV-054", - "LV-056", - "LV-057", - "LV-058", - "LV-059", - "LV-061", - "LV-062", - "LV-060", - "LV-063", - "LV-064", - "LV-065", - "LV-066", - "LV-067", - "LV-068", - "LV-069", - "LV-070", - "LV-071", - "LV-072", - "LV-073", - "LV-074", - "LV-075", - "LV-076", - "LV-REZ", - "LV-078", - "LV-RIX", - "LV-079", - "LV-080", - "LV-081", - "LV-082", - "LV-084", - "LV-083", - "LV-085", - "LV-086", - "LV-087", - "LV-088", - "LV-089", - "LV-090", - "LV-091", - "LV-092", - "LV-093", - "LV-094", - "LV-095", - "LV-096", - "LV-097", - "LV-098", - "LV-099", - "LV-100", - "LV-101", - "LV-VMR", - "LV-102", - "LV-103", - "LV-104", - "LV-105", - "LV-VEN", - "LV-106", - "LV-107", - "LV-108", - "LV-109", - "LV-110", - "LB", - "LB-BA", - "LB-BI", - "LB-JL", - "LB-NA", - "LS", - "LS-D", - "LS-B", - "LS-C", - "LS-E", - "LS-A", - "LS-F", - "LS-J", - "LS-H", - "LS-G", - "LS-K", - "LR", - "LR-BM", - "LR-BG", - "LR-GP", - "LR-GB", - "LR-CM", - "LR-GG", - "LR-GK", - "LR-LO", - "LR-MG", - "US-MD", - "LR-MO", - "LR-NI", - "LR-RI", - "LR-RG", - "LR-SI", - "LY", - "LY-BU", - "LY-JA", - "LY-JG", - "LY-JI", - "LY-JU", - "LY-KF", - "LY-MJ", - "LY-MB", - "LY-WA", - "LY-NQ", - "LY-ZA", - "LY-BA", - "LY-DR", - "LY-GT", - "LY-MI", - "LY-MQ", - "LY-NL", - "LY-SB", - "LY-SR", - "LY-TB", - "LY-WD", - "LY-WS", - "LI", - "LI-01", - "LI-02", - "LI-03", - "LI-04", - "LI-05", - "LI-06", - "LI-07", - "LI-08", - "LI-09", - "LI-10", - "LI-11", - "LT", - "LT-AL", - "LT-KU", - "LT-KL", - "LT-MR", - "LT-PN", - "LT-SA", - "LT-TA", - "LT-TE", - "LT-UT", - "LT-VL", - "LU", - "LU-D", - "LU-G", - "LU-L", - "MO", - "MG", - "MG-T", - "MG-D", - "MG-F", - "MG-M", - "MG-A", - "MG-U", - "MW", - "UG-C", - "MW-S", - "MY", - "MY-14", - "MY-01", - "MY-02", - "MY-03", - "MY-15", - "MY-04", - "MY-05", - "MY-06", - "MY-07", - "MY-08", - "MY-09", - "MY-16", - "MY-12", - "MY-13", - "MY-10", - "MY-11", - "MV", - "LK-2", - "MV-MLE", - "LK-7", - "MV-NO", - "MV-SC", - "MV-SU", - "MV-UN", - "MV-US", - "ML", - "ML-BKO", - "ML-7", - "ML-1", - "ML-8", - "ML-2", - "ML-5", - "ML-4", - "ML-3", - "ML-6", - "MT", - "MH", - "MH-ALL", - "MH-ALK", - "MH-ARN", - "MH-AUR", - "MH-EBO", - "MH-ENI", - "MH-JAB", - "MH-JAL", - "MH-KIL", - "MH-KWA", - "MH-LAE", - "MH-LIB", - "MH-LIK", - "MH-MAJ", - "MH-MAL", - "MH-MEJ", - "MH-MIL", - "MH-NMK", - "MH-NMU", - "MH-RON", - "MH-UJA", - "MH-UTI", - "MH-WTH", - "MH-WTJ", - "MQ", - "MR", - "MR-07", - "MR-03", - "MR-05", - "MR-08", - "MR-04", - "MR-10", - "MR-01", - "MR-02", - "MR-12", - "MR-NKC", - "MR-09", - "MR-11", - "MR-06", - "MU", - "MU-AG", - "MU-BL", - "MU-CC", - "MU-FL", - "MU-GP", - "MU-MO", - "MU-PA", - "MU-PW", - "MU-PL", - "MU-RR", - "MU-RO", - "MU-SA", - "YT", - "MX", - "MX-AGU", - "MX-BCN", - "MX-BCS", - "MX-CAM", - "MX-CHP", - "MX-CHH", - "MX-COA", - "MX-COL", - "MX-DUR", - "MX-GUA", - "MX-GRO", - "MX-HID", - "MX-JAL", - "MX-DIF", - "MX-MIC", - "MX-MOR", - "MX-NAY", - "MX-NLE", - "MX-OAX", - "MX-PUE", - "MX-QUE", - "MX-ROO", - "MX-SLP", - "MX-SIN", - "MX-SON", - "MX-MEX", - "MX-TAB", - "MX-TAM", - "MX-TLA", - "MX-VER", - "MX-YUC", - "MX-ZAC", - "FM", - "FM-TRK", - "FM-KSA", - "FM-PNI", - "FM-YAP", - "MD", - "MD-AN", - "MD-BA", - "MD-BS", - "MD-BD", - "MD-BR", - "MD-CA", - "MD-CL", - "MD-CT", - "MD-CS", - "MD-CU", - "MD-CM", - "MD-CR", - "MD-DO", - "MD-DR", - "MD-DU", - "MD-ED", - "MD-FA", - "MD-FL", - "MD-GA", - "MD-GL", - "MD-HI", - "MD-IA", - "MD-LE", - "MD-NI", - "MD-OC", - "MD-OR", - "MD-RE", - "MD-RI", - "MD-SI", - "MD-SD", - "MD-SO", - "MD-SV", - "MD-ST", - "MD-TA", - "MD-TE", - "MD-SN", - "MD-UN", - "MC", - "MN", - "MN-073", - "MN-071", - "MN-069", - "MN-067", - "MN-037", - "MN-061", - "MN-063", - "MN-059", - "MN-065", - "MN-064", - "MN-039", - "MN-043", - "MN-041", - "MN-035", - "MN-049", - "MN-051", - "MN-047", - "MN-1", - "MN-053", - "MN-046", - "MN-055", - "MN-057", - "ME", - "ME-01", - "ME-02", - "ME-03", - "ME-04", - "ME-05", - "ME-06", - "ME-07", - "ME-08", - "ME-09", - "ME-10", - "ME-11", - "ME-12", - "ME-13", - "ME-14", - "ME-15", - "ME-16", - "ME-17", - "ME-18", - "ME-19", - "ME-20", - "ME-21", - "MS", - "MA", - "MA-09", - "MA-10", - "MA-05", - "MA-02", - "MA-08", - "MA-14", - "MA-15", - "MA-11", - "MA-06", - "MA-04", - "MA-07", - "MA-13", - "MA-12", - "MA-01", - "MA-03", - "MZ", - "MZ-P", - "MZ-G", - "MZ-I", - "MZ-B", - "MZ-MPM", - "MZ-L", - "MZ-N", - "MZ-A", - "MZ-S", - "MZ-T", - "MZ-Q", - "MM", - "MM-07", - "MM-02", - "MM-14", - "MM-11", - "MM-12", - "MM-13", - "MM-03", - "MM-04", - "MM-15", - "MM-18", - "MM-16", - "MM-01", - "MM-17", - "MM-05", - "MM-06", - "NA", - "NA-ER", - "NA-HA", - "NA-KA", - "NA-OK", - "NA-KH", - "NA-KU", - "NA-OW", - "NA-OH", - "NA-OS", - "NA-ON", - "NA-OT", - "NA-OD", - "NA-CA", - "NR", - "NR-01", - "NR-02", - "NR-03", - "NR-04", - "NR-05", - "NR-06", - "NR-07", - "NR-08", - "NR-09", - "NR-10", - "NR-11", - "NR-12", - "NR-13", - "NR-14", - "NP", - "NP-5", - "NP-2", - "NL", - "NL-DR", - "NL-FL", - "NL-FR", - "NL-GE", - "NL-GR", - "NL-LI", - "NL-NB", - "NL-NH", - "NL-OV", - "NL-ZH", - "NL-UT", - "NL-ZE", - "NC", - "NZ", - "NZ-AUK", - "NZ-BOP", - "NZ-CAN", - "NZ-CIT", - "NZ-GIS", - "NZ-HKB", - "NZ-MWT", - "NZ-MBH", - "NZ-NSN", - "NZ-NTL", - "NZ-OTA", - "NZ-STL", - "NZ-TKI", - "NZ-TAS", - "NZ-WKO", - "NZ-WGN", - "NZ-WTC", - "NI", - "NI-AN", - "NI-AS", - "NI-BO", - "NI-CA", - "NI-CI", - "NI-CO", - "NI-ES", - "NI-GR", - "NI-JI", - "NI-LE", - "NI-MD", - "NI-MN", - "NI-MS", - "NI-MT", - "NI-NS", - "NI-SJ", - "NI-RI", - "NG-NI", - "NE-1", - "NE-2", - "NE-3", - "NE-4", - "NE-8", - "NE-5", - "NE-6", - "NE-7", - "NG", - "NG-AB", - "NG-AD", - "NG-AK", - "NG-AN", - "NG-BA", - "NG-BY", - "NG-BE", - "NG-BO", - "NG-CR", - "NG-DE", - "NG-EB", - "NG-ED", - "NG-EK", - "NG-EN", - "NG-FC", - "NG-GO", - "NG-IM", - "NG-JI", - "NG-KD", - "NG-KN", - "NG-KT", - "NG-KE", - "NG-KO", - "NG-KW", - "NG-LA", - "NG-NA", - "NG-OG", - "NG-ON", - "NG-OS", - "NG-OY", - "NG-RI", - "NG-SO", - "NG-TA", - "NG-YO", - "NG-ZA", - "NU", - "NU-TOI", - "NF", - "KP", - "KP-04", - "KP-07", - "KP-09", - "KP-06", - "KP-03", - "KP-01", - "KP-13", - "KP-10", - "KP-08", - "KP-05", - "KP-02", - "MK", - "MK-07", - "MK-08", - "MK-78", - "MK-80", - "MK-23", - "MK-26", - "MK-19", - "MK-51", - "MK-53", - "MK-02", - "MK-03", - "MK-04", - "MK-05", - "MK-06", - "MK-81", - "MK-82", - "MK-21", - "MK-22", - "MK-25", - "MK-24", - "MK-27", - "MK-18", - "MK-20", - "MK-34", - "MK-35", - "MK-37", - "MK-36", - "MK-40", - "MK-42", - "MK-41", - "MK-43", - "MK-44", - "MK-45", - "MK-46", - "MK-47", - "MK-48", - "MK-49", - "MK-52", - "MK-50", - "MK-54", - "MK-55", - "MK-56", - "MK-60", - "MK-59", - "MK-61", - "MK-62", - "MK-65", - "MK-66", - "MK-67", - "MK-83", - "MK-70", - "MK-72", - "MK-11", - "MK-13", - "MK-12", - "MK-14", - "MK-31", - "MK-30", - "MK-33", - "MK-58", - "MK-63", - "MK-64", - "MK-85", - "MK-71", - "MK-73", - "MK-74", - "MK-69", - "MK-75", - "MK-76", - "MK-10", - "MK-16", - "MK-32", - "MP", - "NO", - "NO-02", - "NO-09", - "NO-06", - "NO-20", - "NO-04", - "NO-12", - "NO-15", - "NO-17", - "NO-18", - "NO-05", - "NO-03", - "NO-01", - "NO-11", - "NO-14", - "NO-16", - "NO-08", - "NO-19", - "NO-10", - "NO-07", - "OM", - "OM-DA", - "OM-ZA", - "OM-BS", - "OM-BJ", - "OM-BU", - "OM-WU", - "OM-SS", - "OM-SJ", - "OM-ZU", - "OM-MU", - "OM-MA", - "PK", - "PK-JK", - "PK-BA", - "PK-TA", - "PK-GB", - "PK-IS", - "PK-KP", - "PK-SD", - "PW", - "PW-002", - "PW-004", - "PW-010", - "PW-050", - "PW-100", - "PW-150", - "PW-212", - "PW-214", - "PW-218", - "PW-222", - "PW-227", - "PW-224", - "PW-226", - "PW-228", - "PW-350", - "PW-370", - "PS", - "PA-8", - "PA-1", - "PA-4", - "PA-2", - "PA-3", - "PA-5", - "PA-EM", - "PA-KY", - "PA-6", - "PA-7", - "PA-NB", - "PA-9", - "PG", - "PG-NSB", - "PG-CPK", - "PG-EBR", - "PG-ESW", - "PG-EHG", - "PG-EPW", - "PG-GPK", - "PG-JWK", - "PG-MPM", - "PG-MRL", - "PG-MBA", - "PG-MPL", - "PG-NCD", - "PG-NIK", - "LK-4", - "PG-SHM", - "PG-WBK", - "PG-SAN", - "PG-WHM", - "LK-1", - "PY", - "PY-16", - "PY-10", - "PY-13", - "PY-ASU", - "PY-19", - "PY-5", - "PY-6", - "PY-14", - "PY-1", - "PY-3", - "PY-4", - "PY-7", - "PY-8", - "PY-12", - "PY-9", - "PY-15", - "PY-2", - "PE", - "VE-Z", - "PE-ANC", - "PE-APU", - "PE-ARE", - "PE-AYA", - "PE-CAJ", - "PE-CAL", - "PE-CUS", - "PE-HUV", - "PE-HUC", - "PE-ICA", - "PE-JUN", - "PE-LAM", - "PE-LIM", - "PE-LOR", - "PE-MDD", - "PE-MOQ", - "PE-PAS", - "PE-PIU", - "PE-PUN", - "PE-SAM", - "PE-TAC", - "PE-TUM", - "PE-UCA", - "PH", - "PH-14", - "PH-05", - "PH-02", - "PH-40", - "PH-13", - "PH-03", - "PH-07", - "PH-15", - "PH-11", - "PH-08", - "PH-01", - "PH-00", - "PH-41", - "PH-10", - "PH-12", - "PH-06", - "PH-09", - "PN", - "PL", - "PL-WP", - "PL-KP", - "PL-MA", - "PL-LD", - "PL-DS", - "PL-LU", - "PL-LB", - "PL-MZ", - "PL-OP", - "PL-PK", - "PL-PD", - "PL-PM", - "PL-SL", - "PL-SK", - "PL-WN", - "PL-ZP", - "PT", - "PT-01", - "PT-20", - "PT-02", - "PT-03", - "PT-04", - "PT-05", - "PT-06", - "PT-07", - "PT-08", - "PT-09", - "PT-10", - "PT-11", - "PT-30", - "PT-12", - "PT-13", - "PT-14", - "PT-15", - "PT-16", - "PT-17", - "PT-18", - "PR", - "QA", - "QA-ZA", - "QA-KH", - "QA-RA", - "QA-WA", - "QA-DA", - "QA-MS", - "QA-US", - "RE", - "RO", - "RO-AB", - "RO-AR", - "RO-AG", - "RO-BC", - "RO-BH", - "RO-BN", - "RO-BT", - "RO-BR", - "RO-BV", - "RO-B", - "RO-BZ", - "RO-CL", - "RO-CS", - "RO-CJ", - "RO-CT", - "RO-CV", - "RO-DB", - "RO-DJ", - "RO-GL", - "RO-GR", - "RO-GJ", - "RO-HR", - "RO-HD", - "RO-IL", - "RO-IS", - "RO-IF", - "RO-MM", - "RO-MH", - "RO-MS", - "RO-NT", - "RO-OT", - "RO-PH", - "RO-SJ", - "RO-SM", - "RO-SB", - "RO-SV", - "RO-TR", - "RO-TM", - "RO-TL", - "RO-VL", - "RO-VS", - "RO-VN", - "RU", - "RU-AD", - "RU-ALT", - "RU-AL", - "RU-AMU", - "RU-ARK", - "RU-AST", - "RU-BEL", - "RU-BRY", - "RU-BU", - "RU-CE", - "RU-CHE", - "RU-CHU", - "RU-CU", - "RU-DA", - "RU-IN", - "RU-IRK", - "RU-IVA", - "RU-YEV", - "RU-KB", - "RU-KGD", - "RU-KL", - "RU-KLU", - "RU-KAM", - "RU-KC", - "RU-KEM", - "RU-KHA", - "RU-KHM", - "RU-KIR", - "RU-KO", - "RU-KOS", - "RU-KDA", - "RU-KYA", - "RU-KGN", - "RU-KRS", - "RU-LEN", - "RU-LIP", - "RU-MAG", - "RU-ME", - "RU-MO", - "RU-MOW", - "RU-MOS", - "RU-MUR", - "RU-NEN", - "RU-NIZ", - "RU-SE", - "RU-NGR", - "RU-NVS", - "RU-OMS", - "RU-ORE", - "RU-ORL", - "RU-PNZ", - "RU-PER", - "RU-PRI", - "RU-PSK", - "RU-BA", - "RU-KR", - "RU-KK", - "RU-ROS", - "RU-RYA", - "RU-SPE", - "RU-SA", - "RU-SAK", - "RU-SAM", - "RU-SAR", - "RU-SMO", - "RU-STA", - "RU-SVE", - "RU-TAM", - "RU-TA", - "RU-TOM", - "RU-TUL", - "RU-TY", - "RU-TVE", - "RU-TYU", - "RU-UD", - "RU-ULY", - "RU-VLA", - "RU-VGG", - "RU-VLG", - "RU-VOR", - "RU-YAN", - "RU-YAR", - "RU-ZAB", - "RW", - "LK-5", - "RW-01", - "LK-3", - "WS", - "WS-AA", - "WS-AL", - "WS-AT", - "WS-FA", - "WS-GE", - "WS-GI", - "WS-PA", - "WS-SA", - "WS-TU", - "WS-VF", - "WS-VS", - "SM-07", - "SM-01", - "SM-06", - "SM-02", - "SM-03", - "SM-04", - "SM-05", - "SM-08", - "SM-09", - "ST", - "ST-P", - "ST-S", - "SA", - "SA-11", - "SA-12", - "SA-03", - "SA-05", - "SA-14", - "SA-06", - "SA-09", - "SA-02", - "SA-10", - "SA-08", - "SA-01", - "SA-07", - "SN", - "SN-DK", - "SN-DB", - "SN-FK", - "SN-KA", - "SN-KL", - "SN-KE", - "SN-KD", - "SN-LG", - "SN-MT", - "SN-SL", - "SN-SE", - "SN-TC", - "SN-TH", - "SN-ZG", - "RS", - "RS-VO", - "SC", - "SC-01", - "SC-02", - "SC-03", - "SC-05", - "SC-04", - "SC-06", - "SC-07", - "SC-08", - "SC-09", - "SC-10", - "SC-11", - "SC-12", - "SC-13", - "SC-14", - "SC-15", - "SC-16", - "SC-24", - "SC-17", - "SC-18", - "SC-19", - "SC-20", - "SC-21", - "SC-25", - "SC-22", - "SC-23", - "SL", - "SL-W", - "SG", - "SX", - "SK", - "SK-BC", - "SK-BL", - "SK-KI", - "SK-NI", - "SK-PV", - "SK-TC", - "SK-TA", - "SK-ZI", - "SI", - "SB", - "SB-CT", - "SB-CH", - "SB-GU", - "SB-IS", - "SB-MK", - "SB-ML", - "SB-RB", - "SB-TE", - "SO", - "SO-AW", - "SO-BK", - "SO-BN", - "SO-BR", - "SO-BY", - "SO-GA", - "SO-GE", - "SO-HI", - "SO-JD", - "SO-JH", - "SO-MU", - "SO-NU", - "SO-SA", - "SO-SD", - "SO-SH", - "SO-SO", - "SO-TO", - "SO-WO", - "ZA", - "ZA-EC", - "ZA-FS", - "ZA-GT", - "ZA-NL", - "ZA-LP", - "ZA-MP", - "ZA-NC", - "ZA-WC", - "GS", - "KR", - "KR-26", - "KR-43", - "KR-44", - "KR-27", - "KR-30", - "KR-42", - "KR-29", - "KR-41", - "KR-47", - "KR-48", - "KR-28", - "KR-49", - "KR-45", - "KR-46", - "KR-11", - "KR-31", - "SS", - "SS-UY", - "SS-LK", - "SS-EC", - "SS-EE", - "SS-JG", - "SS-BN", - "SS-NU", - "SS-WR", - "SS-BW", - "SS-EW", - "ES", - "ES-AN", - "ES-AR", - "ES-AS", - "ES-IB", - "ES-PV", - "ES-CN", - "ES-CB", - "ES-CL", - "ES-CM", - "ES-CT", - "ES-CE", - "ES-MD", - "ES-EX", - "ES-GA", - "ES-RI", - "ES-ML", - "ES-NC", - "ES-MC", - "ES-VC", - "LK", - "LK-6", - "LK-9", - "LK-8", - "BL", - "SH", - "SH-AC", - "SH-HL", - "SH-TA", - "KN", - "KN-01", - "KN-02", - "KN-03", - "KN-04", - "KN-05", - "KN-06", - "KN-07", - "KN-08", - "KN-09", - "KN-10", - "KN-11", - "KN-12", - "KN-13", - "KN-15", - "LC", - "LC-01", - "LC-02", - "LC-03", - "LC-04", - "LC-05", - "LC-06", - "LC-07", - "LC-08", - "LC-09", - "LC-10", - "LC-11", - "MF", - "PM", - "VC", - "VC-01", - "VC-06", - "SD", - "SD-GZ", - "SD-GD", - "SD-NB", - "SD-DW", - "SD-DS", - "SD-KA", - "SD-KH", - "SD-KN", - "ZM-05", - "SD-RS", - "SD-NR", - "SD-SI", - "SD-DN", - "SD-KS", - "SD-NW", - "SR", - "SR-BR", - "SR-CM", - "SR-CR", - "SR-MA", - "SR-NI", - "SR-PR", - "SR-PM", - "SR-SA", - "SR-SI", - "SR-WA", - "SJ", - "SE", - "SE-K", - "SE-W", - "SE-X", - "SE-I", - "SE-N", - "SE-Z", - "SE-F", - "SE-H", - "SE-G", - "SE-BD", - "SE-T", - "SE-E", - "SE-M", - "SE-D", - "SE-AB", - "SE-C", - "SE-S", - "SE-AC", - "SE-Y", - "SE-U", - "SE-O", - "CH", - "CH-AG", - "CH-AI", - "CH-AR", - "CH-BL", - "CH-BS", - "CH-BE", - "CH-FR", - "CH-GL", - "CH-JU", - "CH-NE", - "CH-OW", - "CH-SH", - "CH-SZ", - "CH-SO", - "CH-UR", - "CH-ZG", - "CH-GE", - "CH-GR", - "CH-LU", - "CH-NW", - "CH-SG", - "CH-TG", - "CH-TI", - "CH-VS", - "CH-VD", - "CH-ZH", - "SY", - "SY-HA", - "SY-HL", - "SY-RA", - "SY-SU", - "SY-DI", - "SY-DR", - "SY-DY", - "SY-HM", - "SY-HI", - "SY-ID", - "SY-LA", - "SY-QU", - "SY-RD", - "SY-TA", - "TW", - "TW-KHH", - "TW-TPQ", - "TW-TXG", - "TW-TNN", - "TW-TPE", - "TW-TAO", - "TJ", - "TJ-RR", - "TJ-GB", - "TJ-KT", - "TJ-SU", - "TZ", - "TZ-01", - "TZ-03", - "TZ-04", - "TZ-05", - "TZ-08", - "TZ-09", - "TZ-12", - "TZ-26", - "TZ-13", - "TZ-14", - "TZ-16", - "TZ-17", - "TZ-18", - "TZ-06", - "TZ-10", - "TZ-19", - "TZ-20", - "TZ-21", - "TZ-22", - "TZ-23", - "TZ-24", - "TZ-25", - "TZ-11", - "TZ-07", - "TZ-15", - "TH", - "TH-37", - "TH-15", - "TH-10", - "TH-38", - "TH-31", - "TH-24", - "TH-18", - "TH-36", - "TH-22", - "TH-50", - "TH-57", - "TH-20", - "TH-86", - "TH-46", - "TH-62", - "TH-71", - "TH-40", - "TH-81", - "TH-52", - "TH-51", - "TH-42", - "TH-16", - "TH-58", - "TH-44", - "TH-49", - "TH-26", - "TH-73", - "TH-48", - "TH-30", - "TH-60", - "TH-80", - "TH-55", - "TH-96", - "TH-39", - "TH-43", - "TH-12", - "TH-13", - "TH-94", - "TH-82", - "TH-93", - "TH-56", - "TH-67", - "TH-76", - "TH-66", - "TH-65", - "TH-14", - "TH-54", - "TH-83", - "TH-25", - "TH-77", - "TH-85", - "TH-70", - "TH-21", - "TH-45", - "TH-27", - "TH-47", - "TH-11", - "TH-74", - "TH-75", - "TH-19", - "TH-91", - "TH-33", - "TH-17", - "TH-90", - "TH-64", - "TH-72", - "TH-84", - "TH-32", - "TH-63", - "TH-92", - "TH-23", - "TH-34", - "TH-41", - "TH-61", - "TH-53", - "TH-95", - "TH-35", - "TL", - "TL-AL", - "TL-AN", - "TL-BA", - "TL-BO", - "TL-CO", - "TL-DI", - "TL-ER", - "TL-LA", - "TL-LI", - "TL-MT", - "TL-MF", - "TL-OE", - "TL-VI", - "TG", - "TG-C", - "TG-K", - "TG-M", - "TK", - "TO", - "TO-01", - "TO-02", - "TO-03", - "TO-04", - "TO-05", - "TT", - "TT-ARI", - "TT-CHA", - "TT-CTT", - "TT-DMN", - "TT-ETO", - "TT-PED", - "TT-PTF", - "TT-POS", - "TT-PRT", - "TT-RCM", - "TT-SFO", - "TT-SJL", - "TT-SGE", - "TT-SIP", - "TT-TUP", - "TT-WTO", - "TN", - "TN-12", - "TN-31", - "TN-13", - "TN-23", - "TN-81", - "TN-71", - "TN-32", - "TN-41", - "TN-42", - "TN-73", - "TN-33", - "TN-14", - "TN-53", - "TN-82", - "TN-52", - "TN-21", - "TN-61", - "TN-43", - "TN-34", - "TN-51", - "TN-83", - "TN-72", - "TN-11", - "TN-22", - "TR", - "TR-01", - "TR-02", - "TR-03", - "TR-04", - "TR-68", - "TR-05", - "TR-06", - "TR-07", - "TR-75", - "TR-08", - "TR-09", - "TR-10", - "TR-74", - "TR-72", - "TR-69", - "TR-11", - "TR-12", - "TR-13", - "TR-14", - "TR-15", - "TR-16", - "TR-17", - "TR-18", - "TR-19", - "TR-20", - "TR-21", - "TR-81", - "TR-22", - "TR-23", - "TR-24", - "TR-25", - "TR-26", - "TR-27", - "TR-28", - "TR-29", - "TR-30", - "TR-31", - "TR-76", - "TR-32", - "TR-34", - "TR-35", - "TR-46", - "TR-78", - "TR-70", - "TR-36", - "TR-37", - "TR-38", - "TR-79", - "TR-71", - "TR-39", - "TR-40", - "TR-41", - "TR-42", - "TR-43", - "TR-44", - "TR-45", - "TR-47", - "TR-33", - "TR-48", - "TR-49", - "TR-50", - "TR-51", - "TR-52", - "TR-80", - "TR-53", - "TR-54", - "TR-55", - "TR-63", - "TR-56", - "TR-57", - "TR-58", - "TR-73", - "TR-59", - "TR-60", - "TR-61", - "TR-62", - "TR-64", - "TR-65", - "TR-77", - "TR-66", - "TR-67", - "TM", - "TM-A", - "TM-S", - "TM-B", - "TM-D", - "TM-L", - "TM-M", - "TC", - "TV", - "TV-FUN", - "TV-NMG", - "TV-NMA", - "TV-NIT", - "TV-NIU", - "TV-NKF", - "TV-NKL", - "TV-VAI", - "UM", - "VI", - "UG", - "UA", - "UA-71", - "UA-74", - "UA-77", - "UA-43", - "UA-12", - "UA-14", - "UA-26", - "UA-63", - "UA-65", - "UA-68", - "UA-35", - "UA-30", - "UA-32", - "UA-09", - "UA-46", - "UA-48", - "UA-51", - "UA-53", - "UA-56", - "UA-40", - "UA-59", - "UA-61", - "UA-05", - "UA-07", - "UA-21", - "UA-23", - "UA-18", - "AE", - "AE-AZ", - "AE-AJ", - "AE-DU", - "AE-FU", - "AE-RK", - "AE-SH", - "AE-UQ", - "GB", - "GB-ENG", - "GB-NIR", - "GB-SCT", - "GB-WLS", - "US", - "US-AL", - "US-AL-630", - "US-GA-522", - "US-GA-606", - "US-AL-691", - "US-MS-711", - "US-FL-686", - "US-AL-698", - "US-AK", - "US-AK-743", - "US-AK-745", - "US-AK-747", - "US-AZ", - "US-AZ-753", - "US-AZ-789", - "US-CA-771", - "US-AR", - "US-OK-670", - "US-AR-734", - "US-AR-693", - "US-TN-640", - "US-LA-628", - "US-TX-612", - "US-MO-619", - "US-CA", - "US-CA-800", - "US-CA-868", - "US-CA-802", - "US-CA-866", - "US-CA-803", - "US-OR-813", - "US-CA-828", - "US-CA-804", - "US-NV-811", - "US-CA-862", - "US-CA-825", - "US-CA-807", - "US-CA-855", - "US-CO", - "US-CO-752", - "US-WY-751", - "US-CO-773", - "US-CT", - "US-CT-533", - "US-DE", - "US-PA-504", - "US-MD-576", - "US-DC", - "US-FL", - "US-FL-571", - "US-FL-592", - "US-GA-561", - "US-FL-528", - "US-FL-534", - "US-FL-656", - "US-GA-530", - "US-FL-539", - "US-FL-548", - "US-GA-525", - "US-GA-524", - "US-SC-520", - "US-TN-575", - "US-GA-503", - "US-SC-507", - "US-HI", - "US-HI-744", - "US-ID", - "US-OR-757", - "US-WY-758", - "US-WA-881", - "US-ID-760", - "US-IL", - "US-IL-648", - "US-IN-602", - "US-IA-682", - "US-KY-649", - "US-MO-632", - "US-IL-675", - "US-MO-717", - "US-IL-610", - "US-MO-609", - "US-IN-581", - "US-IN", - "US-OH-515", - "US-OH-509", - "US-IN-527", - "US-IN-582", - "US-KY-529", - "US-MI-588", - "US-IA", - "US-IA-637", - "US-IA-679", - "US-NE-652", - "US-MO-631", - "US-MN-611", - "US-NE-624", - "US-KS", - "US-MO-603", - "US-MO-616", - "US-MO-638", - "US-KS-605", - "US-KS-678", - "US-KY", - "US-KY-736", - "US-WV-564", - "US-TN-557", - "US-KY-541", - "US-TN-659", - "US-VA-531", - "US-LA", - "US-LA-644", - "US-MS-716", - "US-LA-642", - "US-LA-643", - "US-LA-622", - "US-ME", - "US-ME-537", - "US-NH-500", - "US-ME-552", - "US-MD-512", - "US-WV-511", - "US-MA", - "US-NH-506", - "US-MA-521", - "US-MA-543", - "US-MI", - "US-MI-583", - "US-MI-505", - "US-MI-513", - "US-MI-563", - "US-MI-551", - "US-MI-553", - "US-OH-547", - "US-MI-540", - "US-MN", - "US-WI-676", - "US-ND-724", - "US-WI-702", - "US-MN-737", - "US-WI-613", - "US-MS", - "US-MS-746", - "US-MS-673", - "US-MS-647", - "US-MS-710", - "US-MS-718", - "US-MO", - "US-MO-604", - "US-MT", - "US-WY-756", - "US-MT-754", - "US-MT-798", - "US-MT-755", - "US-MT-766", - "US-ND-687", - "US-MT-762", - "US-NE", - "US-WY-759", - "US-NE-722", - "US-NE-740", - "US-SD-725", - "US-NV", - "US-NV-839", - "US-WY-770", - "US-NH", - "US-VT-523", - "US-NJ", - "US-NY-501", - "US-NM", - "US-NM-790", - "US-TX-634", - "US-TX-765", - "US-NY", - "US-NY-532", - "US-NY-502", - "US-PA-514", - "US-PA-565", - "US-NY-538", - "US-NY-555", - "US-NY-526", - "US-NY-549", - "US-NC", - "US-SC-517", - "US-SC-570", - "US-NC-518", - "US-NC-545", - "US-SC-567", - "US-VA-544", - "US-NC-560", - "US-NC-550", - "US-ND", - "US-OH", - "US-OH-510", - "US-OH-535", - "US-OH-542", - "US-OH-558", - "US-WV-597", - "US-WV-554", - "US-PA-536", - "US-OH-596", - "US-OK", - "US-OK-650", - "US-TX-657", - "US-OK-671", - "US-TX-627", - "US-OR", - "US-OR-821", - "US-OR-801", - "US-WA-820", - "US-WA-810", - "US-PA", - "US-PA-516", - "US-PA-566", - "US-PA-574", - "US-PA-508", - "US-PA-577", - "US-RI", - "US-SC", - "US-SC-519", - "US-SC-546", - "US-SD", - "US-WY-764", - "US-TN", - "US-TN-639", - "US-TX", - "US-TX-662", - "US-TX-635", - "US-TX-692", - "US-TX-600", - "US-TX-623", - "US-TX-636", - "US-TX-618", - "US-TX-749", - "US-TX-651", - "US-TX-633", - "US-TX-661", - "US-TX-641", - "US-TX-709", - "US-TX-626", - "US-TX-625", - "US-UT", - "US-VT", - "US-VA", - "US-WV-559", - "US-VA-584", - "US-WV-569", - "US-VA-556", - "US-VA-573", - "US-WA", - "US-WA-819", - "US-WV", - "US-WV-598", - "US-WI", - "US-WI-658", - "US-WI-669", - "US-WI-617", - "US-WI-705", - "US-WY", - "US-WY-767", - "UY", - "UY-AR", - "UY-CA", - "UY-CL", - "UY-CO", - "UY-DU", - "UY-FS", - "UY-FD", - "UY-LA", - "UY-MA", - "UY-MO", - "UY-PA", - "UY-RN", - "UY-RV", - "UY-RO", - "UY-SA", - "UY-SJ", - "UY-SO", - "UY-TA", - "UY-TT", - "UZ", - "UZ-AN", - "UZ-BU", - "UZ-FA", - "UZ-JI", - "UZ-QA", - "UZ-XO", - "UZ-NG", - "UZ-NW", - "UZ-QR", - "UZ-SA", - "UZ-SI", - "UZ-SU", - "UZ-TO", - "VU", - "VU-MAP", - "VU-PAM", - "VU-SAM", - "VU-SEE", - "VU-TAE", - "VU-TOB", - "VA", - "VE", - "VE-B", - "VE-C", - "VE-D", - "VE-E", - "VE-F", - "VE-A", - "VE-G", - "VE-H", - "VE-Y", - "VE-I", - "VE-W", - "VE-J", - "VE-K", - "VE-L", - "VE-M", - "VE-N", - "VE-O", - "VE-P", - "VE-S", - "VE-T", - "VE-X", - "VE-U", - "VE-V", - "VN", - "VN-44", - "VN-43", - "VN-54", - "VN-53", - "VN-55", - "VN-56", - "VN-50", - "VN-31", - "VN-57", - "VN-58", - "VN-40", - "VN-59", - "VN-CT", - "VN-04", - "VN-DN", - "VN-33", - "VN-72", - "VN-71", - "VN-39", - "VN-45", - "VN-30", - "VN-03", - "VN-63", - "VN-23", - "VN-61", - "VN-HP", - "VN-HN", - "VN-73", - "VN-SG", - "VN-14", - "VN-66", - "VN-34", - "VN-47", - "VN-28", - "VN-01", - "VN-35", - "VN-09", - "VN-02", - "VN-41", - "VN-67", - "VN-22", - "VN-18", - "VN-36", - "VN-68", - "VN-32", - "VN-24", - "VN-27", - "VN-29", - "VN-13", - "VN-25", - "VN-52", - "VN-05", - "VN-37", - "VN-20", - "VN-69", - "VN-21", - "VN-26", - "VN-46", - "VN-51", - "VN-07", - "VN-49", - "VN-70", - "VN-06", - "WF", - "WF-ALO", - "EH", - "YE", - "YE-AM", - "YE-AB", - "YE-DA", - "YE-AD", - "YE-BA", - "YE-HU", - "YE-JA", - "YE-MR", - "YE-MW", - "YE-SA", - "YE-DH", - "YE-HD", - "YE-HJ", - "YE-IB", - "YE-LA", - "YE-MA", - "YE-RA", - "YE-SD", - "YE-SN", - "YE-SH", - "YE-TA", - "ZM", - "ZM-08", - "ZM-03", - "ZM-04", - "ZM-09", - "ZM-06", - "ZM-01", - "ZW", - "ZW-BU", - "ZW-HA", - "ZW-MA", - "ZW-MC", - "ZW-ME", - "ZW-MW", - "ZW-MV", - "ZW-MN", - "ZW-MS", - "ZW-MI" -]
- Changed
hasdata_indeed_listing_getJobListings2 fields changed- changed
Input schema / properties / domain / descriptionPrevious value: -"The domain of the Indeed site (optional)."New value: +"The domain of the Indeed site (optional). Provide one exact documented value (62 allowed), e.g. `ar.indeed.com`, `au.indeed.com`." - removed
Input schema / properties / domain / enumRemoved value: -[ - "ar.indeed.com", - "au.indeed.com", - "at.indeed.com", - "bh.indeed.com", - "be.indeed.com", - "br.indeed.com", - "ca.indeed.com", - "cl.indeed.com", - "cn.indeed.com", - "co.indeed.com", - "cr.indeed.com", - "cz.indeed.com", - "dk.indeed.com", - "ec.indeed.com", - "eg.indeed.com", - "fi.indeed.com", - "fr.indeed.com", - "de.indeed.com", - "gr.indeed.com", - "hk.indeed.com", - "hu.indeed.com", - "in.indeed.com", - "id.indeed.com", - "ie.indeed.com", - "il.indeed.com", - "it.indeed.com", - "jp.indeed.com", - "kw.indeed.com", - "lu.indeed.com", - "malaysia.indeed.com", - "mx.indeed.com", - "ma.indeed.com", - "nl.indeed.com", - "nz.indeed.com", - "ng.indeed.com", - "no.indeed.com", - "om.indeed.com", - "pk.indeed.com", - "pa.indeed.com", - "pe.indeed.com", - "ph.indeed.com", - "pl.indeed.com", - "pt.indeed.com", - "qa.indeed.com", - "ro.indeed.com", - "sa.indeed.com", - "sg.indeed.com", - "za.indeed.com", - "kr.indeed.com", - "es.indeed.com", - "se.indeed.com", - "ch.indeed.com", - "tw.indeed.com", - "th.indeed.com", - "tr.indeed.com", - "ua.indeed.com", - "ae.indeed.com", - "uk.indeed.com", - "www.indeed.com", - "uy.indeed.com", - "ve.indeed.com", - "vn.indeed.com" -]
- Changed
hasdata_youtube_channel_getYoutubeChannel4 fields changed- changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_youtube_search_getYoutubeSearchResults4 fields changed- changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
- Changed
hasdata_youtube_video_getYoutubeVideo4 fields changed- changed
Input schema / properties / gl / descriptionPrevious value: -"The two-letter country code for the country you want to limit the search to."New value: +"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`." - removed
Input schema / properties / gl / enumRemoved value: -[ - "ac", - "af", - "al", - "dz", - "as", - "ad", - "ao", - "ai", - "aq", - "ag", - "ar", - "am", - "aw", - "au", - "at", - "az", - "bs", - "bh", - "bd", - "bb", - "by", - "be", - "bz", - "bj", - "bm", - "bt", - "bo", - "ba", - "bw", - "bv", - "br", - "io", - "bn", - "bg", - "bf", - "bi", - "kh", - "cm", - "ca", - "cv", - "ky", - "cf", - "td", - "cl", - "cn", - "cx", - "cc", - "co", - "km", - "cg", - "cd", - "ck", - "cr", - "ci", - "hr", - "cu", - "cy", - "cz", - "dk", - "dj", - "dm", - "do", - "ec", - "eg", - "sv", - "gq", - "er", - "ee", - "et", - "fk", - "fo", - "fj", - "fi", - "fr", - "gf", - "pf", - "tf", - "ga", - "gm", - "ge", - "de", - "gg", - "gh", - "gi", - "gr", - "gl", - "gd", - "gp", - "gu", - "gt", - "gn", - "gw", - "gy", - "ht", - "hm", - "va", - "hn", - "hk", - "hu", - "im", - "is", - "in", - "id", - "ir", - "iq", - "ie", - "il", - "it", - "je", - "jm", - "jp", - "jo", - "kz", - "ke", - "ki", - "kp", - "kr", - "kw", - "kg", - "la", - "lv", - "lb", - "ls", - "lr", - "ly", - "li", - "lt", - "lu", - "me", - "mo", - "mk", - "mg", - "mw", - "my", - "mv", - "ml", - "mt", - "mh", - "mq", - "mr", - "mu", - "yt", - "mx", - "fm", - "md", - "mc", - "mn", - "ms", - "ma", - "mz", - "mm", - "na", - "nr", - "np", - "nl", - "an", - "nc", - "nz", - "ni", - "ne", - "ng", - "nu", - "nf", - "mp", - "no", - "om", - "pk", - "pw", - "ps", - "pa", - "pg", - "py", - "pe", - "ph", - "pn", - "pl", - "pt", - "pr", - "qa", - "re", - "ro", - "ru", - "rw", - "sh", - "kn", - "lc", - "pm", - "vc", - "ws", - "sm", - "st", - "sa", - "sn", - "rs", - "sc", - "sl", - "sg", - "sk", - "si", - "sb", - "so", - "za", - "gs", - "es", - "lk", - "sd", - "sr", - "sj", - "sz", - "se", - "ch", - "sy", - "tw", - "tj", - "tz", - "th", - "tl", - "tg", - "tk", - "to", - "tt", - "tn", - "tr", - "tm", - "tc", - "tv", - "ug", - "ua", - "ae", - "uk", - "gb", - "us", - "um", - "uy", - "uz", - "vu", - "ve", - "vn", - "vg", - "vi", - "wf", - "eh", - "ye", - "zm", - "zw" -] - changed
Input schema / properties / hl / descriptionPrevious value: -"The two-letter language code for the language you want to use for the search."New value: +"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`." - removed
Input schema / properties / hl / enumRemoved value: -[ - "af", - "ak", - "sq", - "ws", - "am", - "ar", - "hy", - "az", - "eu", - "be", - "bem", - "bn", - "bh", - "xx-bork", - "bs", - "br", - "bg", - "bt", - "km", - "ca", - "chr", - "ny", - "zh-cn", - "zh-tw", - "zh-hk", - "co", - "hr", - "cs", - "da", - "nl", - "xx-elmer", - "en", - "eo", - "et", - "ee", - "fo", - "tl", - "fil", - "fi", - "fr", - "fy", - "gaa", - "gl", - "ka", - "de", - "el", - "kl", - "gn", - "gu", - "xx-hacker", - "ht", - "ha", - "haw", - "iw", - "he", - "hi", - "hu", - "is", - "ig", - "id", - "ia", - "ga", - "it", - "ja", - "jw", - "kn", - "kk", - "rw", - "rn", - "xx-klingon", - "kg", - "ko", - "kri", - "ku", - "ckb", - "ky", - "lo", - "la", - "lv", - "ln", - "lt", - "loz", - "lg", - "ach", - "mk", - "mg", - "my", - "ml", - "mt", - "mv", - "mi", - "mr", - "mfe", - "mo", - "mn", - "ms", - "sr-me", - "ne", - "pcm", - "nso", - "no", - "nn", - "oc", - "or", - "om", - "ps", - "fa", - "xx-pirate", - "pl", - "pt", - "pt-br", - "pt-pt", - "pa", - "qu", - "ro", - "rm", - "nyn", - "ru", - "gd", - "sr", - "sh", - "st", - "tn", - "crs", - "sn", - "sd", - "si", - "sk", - "sl", - "so", - "es", - "es-419", - "su", - "sw", - "sv", - "tg", - "ta", - "tt", - "te", - "th", - "ti", - "to", - "lua", - "tum", - "tr", - "tk", - "tw", - "ug", - "uk", - "ur", - "uz", - "vu", - "vi", - "cy", - "wo", - "xh", - "yi", - "yo", - "zu" -]
6 tool updates
- Changed
hasdata_booking_search_getBookingSearchResults30 fields changed- removed
Input schema / properties / bedPreference[]Removed value: -{ - "description": "Filter by bed configuration. Multiple values are combined with OR.", - "items": { - "enum": [ - "twinBeds", - "doubleBed" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / bedPreference__Added value: +{ + "description": "Filter by bed configuration. Multiple values are combined with OR.", + "items": { + "enum": [ + "twinBeds", + "doubleBed" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / distanceFromCenter[]Removed value: -{ - "description": "Filter by distance from the destination center. Multiple values are combined with OR.", - "items": { - "enum": [ - "lessThan1Km", - "lessThan3Km", - "lessThan5Km" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / distanceFromCenter__Added value: +{ + "description": "Filter by distance from the destination center. Multiple values are combined with OR.", + "items": { + "enum": [ + "lessThan1Km", + "lessThan3Km", + "lessThan5Km" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / facilities[]Removed value: -{ - "description": "Filter by property-level facilities. Multiple values are combined with OR.", - "items": { - "enum": [ - "swimmingPool", - "parking", - "spa", - "freeWifi", - "hotTubJacuzzi", - "airportShuttle", - "fitnessCenter", - "restaurant", - "nonSmokingRooms", - "frontDesk24Hour", - "electricVehicleChargingStation", - "wheelchairAccessible", - "roomService" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / facilities__Added value: +{ + "description": "Filter by property-level facilities. Multiple values are combined with OR.", + "items": { + "enum": [ + "swimmingPool", + "parking", + "spa", + "freeWifi", + "hotTubJacuzzi", + "airportShuttle", + "fitnessCenter", + "restaurant", + "nonSmokingRooms", + "frontDesk24Hour", + "electricVehicleChargingStation", + "wheelchairAccessible", + "roomService" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / meals[]Removed value: -{ - "description": "Filter by available meal plans. Multiple values are combined with OR.", - "items": { - "enum": [ - "breakfastIncluded", - "kitchenFacilities" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / meals__Added value: +{ + "description": "Filter by available meal plans. Multiple values are combined with OR.", + "items": { + "enum": [ + "breakfastIncluded", + "kitchenFacilities" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / onlinePayment[]Removed value: -{ - "description": "Filter by online payment options.", - "items": { - "enum": [ - "acceptsOnlinePayments" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / onlinePayment__Added value: +{ + "description": "Filter by online payment options.", + "items": { + "enum": [ + "acceptsOnlinePayments" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / price[max]Removed value: -{ - "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.", - "type": "number" -} - removed
Input schema / properties / price[min]Removed value: -{ - "description": "Minimum total price for the stay, in the requested `currency`. Must be `>= 10`. Required if `price[max]` is omitted.", - "type": "number" -} - added
Input schema / properties / price_max_Added value: +{ + "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.", + "type": "number" +} - added
Input schema / properties / price_min_Added value: +{ + "description": "Minimum total price for the stay, in the requested `currency`. Must be `>= 10`. Required if `price[max]` is omitted.", + "type": "number" +} - removed
Input schema / properties / propertyAccessibility[]Removed value: -{ - "description": "Filter by property-level accessibility features. Multiple values are combined with OR.", - "items": { - "enum": [ - "auditoryGuidance", - "toiletWithGrabRails", - "visualAidsTactileSigns", - "visualAidsBraille", - "bathroomEmergencyCord", - "raisedToilet", - "loweredSink" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / propertyAccessibility__Added value: +{ + "description": "Filter by property-level accessibility features. Multiple values are combined with OR.", + "items": { + "enum": [ + "auditoryGuidance", + "toiletWithGrabRails", + "visualAidsTactileSigns", + "visualAidsBraille", + "bathroomEmergencyCord", + "raisedToilet", + "loweredSink" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / propertyType[]Removed value: -{ - "description": "Filter by property type. Multiple values are combined with OR.", - "items": { - "enum": [ - "hostels", - "bedAndBreakfast", - "hotels", - "apartments", - "resorts", - "guesthouses", - "homestays", - "entireHomesAndApartments" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / propertyType__Added value: +{ + "description": "Filter by property type. Multiple values are combined with OR.", + "items": { + "enum": [ + "hostels", + "bedAndBreakfast", + "hotels", + "apartments", + "resorts", + "guesthouses", + "homestays", + "entireHomesAndApartments" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / rating[]Removed value: -{ - "description": "Filter by official star rating. Multiple values are combined with OR.", - "items": { - "enum": [ - "oneStar", - "twoStars", - "threeStars", - "fourStars", - "fiveStars" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / rating__Added value: +{ + "description": "Filter by official star rating. Multiple values are combined with OR.", + "items": { + "enum": [ + "oneStar", + "twoStars", + "threeStars", + "fourStars", + "fiveStars" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / reservationPolicy[]Removed value: -{ - "description": "Filter by reservation flexibility. Multiple values are combined with OR.", - "items": { - "enum": [ - "freeCancellation", - "noPrepayment" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / reservationPolicy__Added value: +{ + "description": "Filter by reservation flexibility. Multiple values are combined with OR.", + "items": { + "enum": [ + "freeCancellation", + "noPrepayment" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / reviewScore[]Removed value: -{ - "description": "Filter by minimum guest review score bucket. Multiple values are combined with OR.", - "items": { - "enum": [ - "wonderful", - "veryGood", - "good", - "pleasant" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / reviewScore__Added value: +{ + "description": "Filter by minimum guest review score bucket. Multiple values are combined with OR.", + "items": { + "enum": [ + "wonderful", + "veryGood", + "good", + "pleasant" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / roomAccessibility[]Removed value: -{ - "description": "Filter by in-room accessibility features. Multiple values are combined with OR.", - "items": { - "enum": [ - "upperFloorsAccessibleByElevator", - "entireUnitLocatedOnGroundFloor", - "walkInShower", - "entireUnitWheelchairAccessible", - "adaptedBath", - "rollInShower", - "showerChair", - "emergencyCordInBathroom", - "toiletWithGrabRails", - "raisedToilet", - "lowerSink" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / roomAccessibility__Added value: +{ + "description": "Filter by in-room accessibility features. Multiple values are combined with OR.", + "items": { + "enum": [ + "upperFloorsAccessibleByElevator", + "entireUnitLocatedOnGroundFloor", + "walkInShower", + "entireUnitWheelchairAccessible", + "adaptedBath", + "rollInShower", + "showerChair", + "emergencyCordInBathroom", + "toiletWithGrabRails", + "raisedToilet", + "lowerSink" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / roomFacilities[]Removed value: -{ - "description": "Filter by in-room facilities. Multiple values are combined with OR.", - "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" - }, - "type": "array" -} - added
Input schema / properties / roomFacilities__Added value: +{ + "description": "Filter by in-room facilities. Multiple values are combined with OR.", + "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" + }, + "type": "array" +} - removed
Input schema / properties / travelGroup[]Removed value: -{ - "description": "Filter by travel-group oriented stay options. Multiple values are combined with OR.", - "items": { - "enum": [ - "adultsOnly", - "petFriendly" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / travelGroup__Added value: +{ + "description": "Filter by travel-group oriented stay options. Multiple values are combined with OR.", + "items": { + "enum": [ + "adultsOnly", + "petFriendly" + ], + "type": "string" + }, + "type": "array" +}
- Changed
hasdata_google_maps_reviews_getMapReviews1 field changed- changed
Input schema / properties / sortBy / enumPrevious value: -[ - "qualityScore", - "newestFirst", - "ratingHigh", - "ratingLow" -]New value: +[ + "mostRelevant", + "newestFirst", + "ratingHigh", + "ratingLow" +]
- Changed
hasdata_google_travel_hotels_getGoogleHotels4 fields changed- removed
Input schema / properties / amenity[]Removed value: -{ - "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", - "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" - }, - "type": "array" -} - added
Input schema / properties / amenity__Added value: +{ + "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", + "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" + }, + "type": "array" +} - removed
Input schema / properties / propertyType[]Removed value: -{ - "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", - "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" - }, - "type": "array" -} - added
Input schema / properties / propertyType__Added value: +{ + "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", + "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" + }, + "type": "array" +}
- Changed
hasdata_redfin_listing_getRealEstateListings98 fields changed- removed
Input schema / properties / beds[max]Removed value: -{ - "description": "The maximum number of bedrooms.", - "type": "number" -} - removed
Input schema / properties / beds[min]Removed value: -{ - "description": "The minimum number of bedrooms.", - "type": "number" -} - added
Input schema / properties / beds_max_Added value: +{ + "description": "The maximum number of bedrooms.", + "type": "number" +} - added
Input schema / properties / beds_min_Added value: +{ + "description": "The minimum number of bedrooms.", + "type": "number" +} - removed
Input schema / properties / cost[acceptedFinancing]Removed value: -{ - "description": "The accepted financing type.", - "enum": [ - "FHA", - "VA" - ], - "type": "string" -} - removed
Input schema / properties / cost[excludeLandLeases]Removed value: -{ - "description": "If set to true, listings with land leases will be excluded.", - "type": "boolean" -} - removed
Input schema / properties / cost[hoa]Removed value: -{ - "description": "The maximum monthly Homeowners Association (HOA) fee.", - "type": "number" -} - removed
Input schema / properties / cost[maxPropertyTaxPerYear]Removed value: -{ - "description": "The maximum property tax per year.", - "type": "number" -} - removed
Input schema / properties / cost[pricePerSqft][max]Removed value: -{ - "description": "The maximum price per square foot.", - "enum": [ - "50", - "100", - "150", - "200", - "250", - "300", - "400", - "500", - "600", - "800", - "1000", - "1400", - "1800", - "2200", - "2600", - "3000" - ], - "type": "string" -} - removed
Input schema / properties / cost[pricePerSqft][min]Removed value: -{ - "description": "The minimum price per square foot.", - "enum": [ - "50", - "100", - "150", - "200", - "250", - "300", - "400", - "500", - "600", - "800", - "1000", - "1400", - "1800", - "2200", - "2600", - "3000" - ], - "type": "string" -} - removed
Input schema / properties / cost[priceReduced]Removed value: -{ - "description": "Filter listings by when the price was reduced.", - "enum": [ - "inTheLastDay", - "inTheLast3Days", - "inTheLast7Days", - "inTheLast14Days", - "inTheLast30Days", - "moreThan30Days", - "moreThan60Days", - "moreThan120Days" - ], - "type": "string" -} - added
Input schema / properties / cost_acceptedFinancing_Added value: +{ + "description": "The accepted financing type.", + "enum": [ + "FHA", + "VA" + ], + "type": "string" +} - added
Input schema / properties / cost_excludeLandLeases_Added value: +{ + "description": "If set to true, listings with land leases will be excluded.", + "type": "boolean" +} - added
Input schema / properties / cost_hoa_Added value: +{ + "description": "The maximum monthly Homeowners Association (HOA) fee.", + "type": "number" +} - added
Input schema / properties / cost_maxPropertyTaxPerYear_Added value: +{ + "description": "The maximum property tax per year.", + "type": "number" +} - added
Input schema / properties / cost_pricePerSqft__max_Added value: +{ + "description": "The maximum price per square foot.", + "enum": [ + "50", + "100", + "150", + "200", + "250", + "300", + "400", + "500", + "600", + "800", + "1000", + "1400", + "1800", + "2200", + "2600", + "3000" + ], + "type": "string" +} - added
Input schema / properties / cost_pricePerSqft__min_Added value: +{ + "description": "The minimum price per square foot.", + "enum": [ + "50", + "100", + "150", + "200", + "250", + "300", + "400", + "500", + "600", + "800", + "1000", + "1400", + "1800", + "2200", + "2600", + "3000" + ], + "type": "string" +} - added
Input schema / properties / cost_priceReduced_Added value: +{ + "description": "Filter listings by when the price was reduced.", + "enum": [ + "inTheLastDay", + "inTheLast3Days", + "inTheLast7Days", + "inTheLast14Days", + "inTheLast30Days", + "moreThan30Days", + "moreThan60Days", + "moreThan120Days" + ], + "type": "string" +} - removed
Input schema / properties / forRentSquareFootage[max]Removed value: -{ - "description": "The maximum square footage for for-rent listings.", - "type": "number" -} - removed
Input schema / properties / forRentSquareFootage[min]Removed value: -{ - "description": "The minimum square footage for for-rent listings.", - "type": "number" -} - added
Input schema / properties / forRentSquareFootage_max_Added value: +{ + "description": "The maximum square footage for for-rent listings.", + "type": "number" +} - added
Input schema / properties / forRentSquareFootage_min_Added value: +{ + "description": "The minimum square footage for for-rent listings.", + "type": "number" +} - removed
Input schema / properties / forSaleSquareFeet[max]Removed value: -{ - "description": "The maximum square footage for for-sale listings.", - "enum": [ - "750", - "1000", - "1100", - "1200", - "1300", - "1400", - "1500", - "1600", - "1700", - "1800", - "1900", - "2000", - "2250", - "2500", - "2750", - "3000", - "4000", - "5000", - "7500", - "10000" - ], - "type": "string" -} - removed
Input schema / properties / forSaleSquareFeet[min]Removed value: -{ - "description": "The minimum square footage for for-sale listings.", - "enum": [ - "750", - "1000", - "1100", - "1200", - "1300", - "1400", - "1500", - "1600", - "1700", - "1800", - "1900", - "2000", - "2250", - "2500", - "2750", - "3000", - "4000", - "5000", - "7500", - "10000" - ], - "type": "string" -} - added
Input schema / properties / forSaleSquareFeet_max_Added value: +{ + "description": "The maximum square footage for for-sale listings.", + "enum": [ + "750", + "1000", + "1100", + "1200", + "1300", + "1400", + "1500", + "1600", + "1700", + "1800", + "1900", + "2000", + "2250", + "2500", + "2750", + "3000", + "4000", + "5000", + "7500", + "10000" + ], + "type": "string" +} - added
Input schema / properties / forSaleSquareFeet_min_Added value: +{ + "description": "The minimum square footage for for-sale listings.", + "enum": [ + "750", + "1000", + "1100", + "1200", + "1300", + "1400", + "1500", + "1600", + "1700", + "1800", + "1900", + "2000", + "2250", + "2500", + "2750", + "3000", + "4000", + "5000", + "7500", + "10000" + ], + "type": "string" +} - removed
Input schema / properties / homeFeatures[basement]Removed value: -{ - "description": "The basement type.", - "enum": [ - "finished", - "unfinished" - ], - "type": "string" -} - removed
Input schema / properties / homeFeatures[garageSpotsMin]Removed value: -{ - "description": "The minimum number of garage spots.", - "enum": [ - "1", - "2", - "3", - "4", - "5" - ], - "type": "string" -} - removed
Input schema / properties / homeFeatures[keywordSearch]Removed value: -{ - "description": "A free-text keyword search applied to listing descriptions.", - "type": "string" -} - removed
Input schema / properties / homeFeatures[options][]Removed value: -{ - "description": "An array of home feature flags to filter the listings.", - "items": { - "enum": [ - "airConditioning", - "waterfront", - "hasAView", - "fireplace", - "fixerUpper", - "guestHouse", - "elevator", - "washerDryerHookup", - "petsAllowed", - "primaryBedroomOnMainFloor", - "rvparking", - "greenHome", - "accessibleHome", - "includeOutdoorParking" - ], - "type": "string" - }, - "type": "array" -} - removed
Input schema / properties / homeFeatures[poolType]Removed value: -{ - "description": "The type of pool.", - "enum": [ - "privatePool", - "communityPool", - "privateOrCommunityPool", - "noPrivatePool" - ], - "type": "string" -} - added
Input schema / properties / homeFeatures_basement_Added value: +{ + "description": "The basement type.", + "enum": [ + "finished", + "unfinished" + ], + "type": "string" +} - added
Input schema / properties / homeFeatures_garageSpotsMin_Added value: +{ + "description": "The minimum number of garage spots.", + "enum": [ + "1", + "2", + "3", + "4", + "5" + ], + "type": "string" +} - added
Input schema / properties / homeFeatures_keywordSearch_Added value: +{ + "description": "A free-text keyword search applied to listing descriptions.", + "type": "string" +} - added
Input schema / properties / homeFeatures_options___Added value: +{ + "description": "An array of home feature flags to filter the listings.", + "items": { + "enum": [ + "airConditioning", + "waterfront", + "hasAView", + "fireplace", + "fixerUpper", + "guestHouse", + "elevator", + "washerDryerHookup", + "petsAllowed", + "primaryBedroomOnMainFloor", + "rvparking", + "greenHome", + "accessibleHome", + "includeOutdoorParking" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / homeFeatures_poolType_Added value: +{ + "description": "The type of pool.", + "enum": [ + "privatePool", + "communityPool", + "privateOrCommunityPool", + "noPrivatePool" + ], + "type": "string" +} - removed
Input schema / properties / homeTypes[]Removed value: -{ - "description": "An array of home types to filter the listings. Allowed values depend on the listing `type`.", - "items": { - "enum": [ - "house", - "townhouse", - "townhome", - "condo", - "land", - "multiFamily", - "mobile", - "coOp", - "other", - "apartment" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / homeTypes__Added value: +{ + "description": "An array of home types to filter the listings. Allowed values depend on the listing `type`.", + "items": { + "enum": [ + "house", + "townhouse", + "townhome", + "condo", + "land", + "multiFamily", + "mobile", + "coOp", + "other", + "apartment" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / listingType[category][]Removed value: -{ - "description": "An array of listing categories.", - "items": { - "enum": [ - "byAgent", - "byOwnerFsbo", - "newConstruction", - "foreclosures" - ], - "type": "string" - }, - "type": "array" -} - removed
Input schema / properties / listingType[excludeShortSales]Removed value: -{ - "description": "If set to true, short sales will be excluded.", - "type": "boolean" -} - removed
Input schema / properties / listingType[redfinListingsOnly]Removed value: -{ - "description": "If set to true, only Redfin-listed properties will be included.", - "type": "boolean" -} - added
Input schema / properties / listingType_category___Added value: +{ + "description": "An array of listing categories.", + "items": { + "enum": [ + "byAgent", + "byOwnerFsbo", + "newConstruction", + "foreclosures" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / listingType_excludeShortSales_Added value: +{ + "description": "If set to true, short sales will be excluded.", + "type": "boolean" +} - added
Input schema / properties / listingType_redfinListingsOnly_Added value: +{ + "description": "If set to true, only Redfin-listed properties will be included.", + "type": "boolean" +} - removed
Input schema / properties / lotSize[max]Removed value: -{ - "description": "The maximum lot size.", - "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" -} - removed
Input schema / properties / lotSize[min]Removed value: -{ - "description": "The minimum lot size.", - "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" -} - added
Input schema / properties / lotSize_max_Added value: +{ + "description": "The maximum lot size.", + "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" +} - added
Input schema / properties / lotSize_min_Added value: +{ + "description": "The minimum lot size.", + "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" +} - removed
Input schema / properties / monthlyPayment[downPaymentAmount]Removed value: -{ - "description": "The down payment as an absolute amount.", - "type": "number" -} - removed
Input schema / properties / monthlyPayment[downPaymentPercent]Removed value: -{ - "description": "The down payment as a percentage of the home price.", - "type": "number" -} - removed
Input schema / properties / monthlyPayment[insuranceRate]Removed value: -{ - "description": "The home insurance rate (percent) used to calculate the monthly payment.", - "type": "number" -} - removed
Input schema / properties / monthlyPayment[interestRate]Removed value: -{ - "description": "The mortgage interest rate (percent) used to calculate the monthly payment.", - "type": "number" -} - removed
Input schema / properties / monthlyPayment[max]Removed value: -{ - "description": "The maximum monthly payment.", - "type": "number" -} - removed
Input schema / properties / monthlyPayment[min]Removed value: -{ - "description": "The minimum monthly payment.", - "type": "number" -} - removed
Input schema / properties / monthlyPayment[mortgageTerm]Removed value: -{ - "description": "The mortgage term used to calculate the monthly payment.", - "enum": [ - "fixed15Years", - "fixed20Years", - "fixed30Years", - "fixed30YearsFha", - "fixed30YearsVa", - "fixed30YearsJumbo" - ], - "type": "string" -} - added
Input schema / properties / monthlyPayment_downPaymentAmount_Added value: +{ + "description": "The down payment as an absolute amount.", + "type": "number" +} - added
Input schema / properties / monthlyPayment_downPaymentPercent_Added value: +{ + "description": "The down payment as a percentage of the home price.", + "type": "number" +} - added
Input schema / properties / monthlyPayment_insuranceRate_Added value: +{ + "description": "The home insurance rate (percent) used to calculate the monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment_interestRate_Added value: +{ + "description": "The mortgage interest rate (percent) used to calculate the monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment_max_Added value: +{ + "description": "The maximum monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment_min_Added value: +{ + "description": "The minimum monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment_mortgageTerm_Added value: +{ + "description": "The mortgage term used to calculate the monthly payment.", + "enum": [ + "fixed15Years", + "fixed20Years", + "fixed30Years", + "fixed30YearsFha", + "fixed30YearsVa", + "fixed30YearsJumbo" + ], + "type": "string" +} - removed
Input schema / properties / openHouseAndTour[openHouse]Removed value: -{ - "description": "Filter listings with an open house.", - "enum": [ - "thisWeekend", - "anytime" - ], - "type": "string" -} - removed
Input schema / properties / openHouseAndTour[videoTour]Removed value: -{ - "description": "If set to true, only listings with a video tour will be included.", - "type": "boolean" -} - added
Input schema / properties / openHouseAndTour_openHouse_Added value: +{ + "description": "Filter listings with an open house.", + "enum": [ + "thisWeekend", + "anytime" + ], + "type": "string" +} - added
Input schema / properties / openHouseAndTour_videoTour_Added value: +{ + "description": "If set to true, only listings with a video tour will be included.", + "type": "boolean" +} - removed
Input schema / properties / pets[]Removed value: -{ - "description": "An array of pet types allowed.", - "items": { - "enum": [ - "dogsAllowed", - "catsAllowed" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / pets__Added value: +{ + "description": "An array of pet types allowed.", + "items": { + "enum": [ + "dogsAllowed", + "catsAllowed" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / price[max]Removed value: -{ - "description": "The maximum price of the listing.", - "type": "number" -} - removed
Input schema / properties / price[min]Removed value: -{ - "description": "The minimum price of the listing.", - "type": "number" -} - added
Input schema / properties / price_max_Added value: +{ + "description": "The maximum price of the listing.", + "type": "number" +} - added
Input schema / properties / price_min_Added value: +{ + "description": "The minimum price of the listing.", + "type": "number" +} - removed
Input schema / properties / rentalAmenities[]Removed value: -{ - "description": "An array of rental amenities to filter the listings.", - "items": { - "enum": [ - "airConditioning", - "dishwasher", - "inUnitWasherDryer", - "parkingAllowed", - "utilitiesIncluded", - "attFiber", - "furnished", - "laundryFacility", - "pool", - "washerDryerHookup" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / rentalAmenities__Added value: +{ + "description": "An array of rental amenities to filter the listings.", + "items": { + "enum": [ + "airConditioning", + "dishwasher", + "inUnitWasherDryer", + "parkingAllowed", + "utilitiesIncluded", + "attFiber", + "furnished", + "laundryFacility", + "pool", + "washerDryerHookup" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / rentalOtherTerms[]Removed value: -{ - "description": "An array of additional rental terms.", - "items": { - "enum": [ - "incomeRestricted", - "student", - "shortTerm", - "seniorLiving", - "military" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / rentalOtherTerms__Added value: +{ + "description": "An array of additional rental terms.", + "items": { + "enum": [ + "incomeRestricted", + "student", + "shortTerm", + "seniorLiving", + "military" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / schools[greatSchoolRating]Removed value: -{ - "description": "The minimum GreatSchools rating (1-10).", - "type": "number" -} - removed
Input schema / properties / schools[includeUnratedSchools]Removed value: -{ - "description": "If set to true, unrated schools will be included.", - "type": "boolean" -} - removed
Input schema / properties / schools[schoolType][]Removed value: -{ - "description": "An array of school types.", - "items": { - "enum": [ - "elementary", - "middle", - "high" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / schools_greatSchoolRating_Added value: +{ + "description": "The minimum GreatSchools rating (1-10).", + "type": "number" +} - added
Input schema / properties / schools_includeUnratedSchools_Added value: +{ + "description": "If set to true, unrated schools will be included.", + "type": "boolean" +} - added
Input schema / properties / schools_schoolType___Added value: +{ + "description": "An array of school types.", + "items": { + "enum": [ + "elementary", + "middle", + "high" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / statusOptions[]Removed value: -{ - "description": "An array of listing statuses.", - "items": { - "enum": [ - "active", - "comingSoon", - "contingentPending" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / statusOptions__Added value: +{ + "description": "An array of listing statuses.", + "items": { + "enum": [ + "active", + "comingSoon", + "contingentPending" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / stories[max]Removed value: -{ - "description": "The maximum number of stories.", - "enum": [ - "1", - "2", - "3", - "4", - "5", - "10", - "15", - "20" - ], - "type": "string" -} - removed
Input schema / properties / stories[min]Removed value: -{ - "description": "The minimum number of stories.", - "enum": [ - "1", - "2", - "3", - "4", - "5", - "10", - "15", - "20" - ], - "type": "string" -} - added
Input schema / properties / stories_max_Added value: +{ + "description": "The maximum number of stories.", + "enum": [ + "1", + "2", + "3", + "4", + "5", + "10", + "15", + "20" + ], + "type": "string" +} - added
Input schema / properties / stories_min_Added value: +{ + "description": "The minimum number of stories.", + "enum": [ + "1", + "2", + "3", + "4", + "5", + "10", + "15", + "20" + ], + "type": "string" +} - removed
Input schema / properties / transportScores[bikeScore]Removed value: -{ - "description": "The minimum bike score (1-100).", - "type": "number" -} - removed
Input schema / properties / transportScores[transitScore]Removed value: -{ - "description": "The minimum transit score (1-100).", - "type": "number" -} - removed
Input schema / properties / transportScores[walkScore]Removed value: -{ - "description": "The minimum walk score (1-100).", - "type": "number" -} - added
Input schema / properties / transportScores_bikeScore_Added value: +{ + "description": "The minimum bike score (1-100).", + "type": "number" +} - added
Input schema / properties / transportScores_transitScore_Added value: +{ + "description": "The minimum transit score (1-100).", + "type": "number" +} - added
Input schema / properties / transportScores_walkScore_Added value: +{ + "description": "The minimum walk score (1-100).", + "type": "number" +} - removed
Input schema / properties / yearBuilt[max]Removed value: -{ - "description": "The maximum year the property was built.", - "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" -} - removed
Input schema / properties / yearBuilt[min]Removed value: -{ - "description": "The minimum year the property was built.", - "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" -} - added
Input schema / properties / yearBuilt_max_Added value: +{ + "description": "The maximum year the property was built.", + "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" +} - added
Input schema / properties / yearBuilt_min_Added value: +{ + "description": "The minimum year the property was built.", + "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" +}
- Changed
hasdata_youtube_search_getYoutubeSearchResults2 fields changed- removed
Input schema / properties / filters[]Removed value: -{ - "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", - "items": { - "enum": [ - "hd", - "subtitles", - "cc", - "d3", - "live", - "bought", - "k4", - "d360", - "location", - "hdr", - "vr180" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / filters__Added value: +{ + "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", + "items": { + "enum": [ + "hd", + "subtitles", + "cc", + "d3", + "live", + "bought", + "k4", + "d360", + "location", + "hdr", + "vr180" + ], + "type": "string" + }, + "type": "array" +}
- Changed
hasdata_zillow_listing_getRealEstateListings40 fields changed- removed
Input schema / properties / basement[]Removed value: -{ - "description": "An array of basement options.", - "items": { - "enum": [ - "finished", - "unfinished" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / basement__Added value: +{ + "description": "An array of basement options.", + "items": { + "enum": [ + "finished", + "unfinished" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / baths[max]Removed value: -{ - "description": "The maximum number of bathrooms.", - "type": "number" -} - removed
Input schema / properties / baths[min]Removed value: -{ - "description": "The minimum number of bathrooms.", - "type": "number" -} - added
Input schema / properties / baths_max_Added value: +{ + "description": "The maximum number of bathrooms.", + "type": "number" +} - added
Input schema / properties / baths_min_Added value: +{ + "description": "The minimum number of bathrooms.", + "type": "number" +} - removed
Input schema / properties / beds[max]Removed value: -{ - "description": "The maximum number of bedrooms.", - "type": "number" -} - removed
Input schema / properties / beds[min]Removed value: -{ - "description": "The minimum number of bedrooms.", - "type": "number" -} - added
Input schema / properties / beds_max_Added value: +{ + "description": "The maximum number of bedrooms.", + "type": "number" +} - added
Input schema / properties / beds_min_Added value: +{ + "description": "The minimum number of bedrooms.", + "type": "number" +} - removed
Input schema / properties / homeTypes[]Removed value: -{ - "description": "An array of home types to filter the listings.", - "items": { - "enum": [ - "house", - "townhome", - "multiFamily", - "condo", - "lot", - "apartment", - "manufactured" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / homeTypes__Added value: +{ + "description": "An array of home types to filter the listings.", + "items": { + "enum": [ + "house", + "townhome", + "multiFamily", + "condo", + "lot", + "apartment", + "manufactured" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / listingPublishOptions[]Removed value: -{ - "description": "An array of listing publish options.", - "items": { - "enum": [ - "ownerPosted", - "agentListed", - "newConstruction", - "foreclosures", - "auctions", - "foreclosed", - "preForeclosures" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / listingPublishOptions__Added value: +{ + "description": "An array of listing publish options.", + "items": { + "enum": [ + "ownerPosted", + "agentListed", + "newConstruction", + "foreclosures", + "auctions", + "foreclosed", + "preForeclosures" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / lotSize[max]Removed value: -{ - "description": "The maximum lot size.", - "type": "number" -} - removed
Input schema / properties / lotSize[min]Removed value: -{ - "description": "The minimum lot size.", - "type": "number" -} - added
Input schema / properties / lotSize_max_Added value: +{ + "description": "The maximum lot size.", + "type": "number" +} - added
Input schema / properties / lotSize_min_Added value: +{ + "description": "The minimum lot size.", + "type": "number" +} - removed
Input schema / properties / otherAmenities[]Removed value: -{ - "description": "An array of other amenities.", - "items": { - "enum": [ - "ac", - "pool", - "waterfront", - "onsiteParking", - "inUnitLaundry", - "acceptZillowApplications", - "incomeRestricted", - "apartmentCommunity" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / otherAmenities__Added value: +{ + "description": "An array of other amenities.", + "items": { + "enum": [ + "ac", + "pool", + "waterfront", + "onsiteParking", + "inUnitLaundry", + "acceptZillowApplications", + "incomeRestricted", + "apartmentCommunity" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / pets[]Removed value: -{ - "description": "An array of pet options.", - "items": { - "enum": [ - "allowsLargeDogs", - "allowsSmallDogs", - "allowsCats" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / pets__Added value: +{ + "description": "An array of pet options.", + "items": { + "enum": [ + "allowsLargeDogs", + "allowsSmallDogs", + "allowsCats" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / price[max]Removed value: -{ - "description": "The maximum price of the listing.", - "type": "number" -} - removed
Input schema / properties / price[min]Removed value: -{ - "description": "The minimum price of the listing.", - "type": "number" -} - added
Input schema / properties / price_max_Added value: +{ + "description": "The maximum price of the listing.", + "type": "number" +} - added
Input schema / properties / price_min_Added value: +{ + "description": "The minimum price of the listing.", + "type": "number" +} - removed
Input schema / properties / propertyStatus[]Removed value: -{ - "description": "An array of property statuses.", - "items": { - "enum": [ - "comingSoon", - "acceptingBackupOffers", - "pendingAndUnderContract" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / propertyStatus__Added value: +{ + "description": "An array of property statuses.", + "items": { + "enum": [ + "comingSoon", + "acceptingBackupOffers", + "pendingAndUnderContract" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / squareFeet[max]Removed value: -{ - "description": "The maximum square footage.", - "type": "number" -} - removed
Input schema / properties / squareFeet[min]Removed value: -{ - "description": "The minimum square footage.", - "type": "number" -} - added
Input schema / properties / squareFeet_max_Added value: +{ + "description": "The maximum square footage.", + "type": "number" +} - added
Input schema / properties / squareFeet_min_Added value: +{ + "description": "The minimum square footage.", + "type": "number" +} - removed
Input schema / properties / tours[]Removed value: -{ - "description": "An array of tour options.", - "items": { - "enum": [ - "open", - "3d" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / tours__Added value: +{ + "description": "An array of tour options.", + "items": { + "enum": [ + "open", + "3d" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / views[]Removed value: -{ - "description": "An array of views.", - "items": { - "enum": [ - "city", - "mountain", - "park", - "water" - ], - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / views__Added value: +{ + "description": "An array of views.", + "items": { + "enum": [ + "city", + "mountain", + "park", + "water" + ], + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / yearBuilt[max]Removed value: -{ - "description": "The maximum year the property was built.", - "type": "number" -} - removed
Input schema / properties / yearBuilt[min]Removed value: -{ - "description": "The minimum year the property was built.", - "type": "number" -} - added
Input schema / properties / yearBuilt_max_Added value: +{ + "description": "The maximum year the property was built.", + "type": "number" +} - added
Input schema / properties / yearBuilt_min_Added value: +{ + "description": "The minimum year the property was built.", + "type": "number" +}
3 tool updates
- Changed
hasdata_booking_place_getBookingPlaceDetails2 fields changed- added
Input schema / properties / childrenAgesAdded value: +{ + "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", + "type": "string" +} - removed
Input schema / properties / childrenAgesJsonRemoved value: -{ - "description": "JSON-encoded array of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the array length must equal `children`. Must not be passed when `children = 0`.\n\nExample: `[1, 3, 7]`\n", - "type": "string" -}
- Changed
hasdata_booking_search_getBookingSearchResults2 fields changed- added
Input schema / properties / childrenAgesAdded value: +{ + "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", + "type": "string" +} - removed
Input schema / properties / childrenAgesJsonRemoved value: -{ - "description": "JSON-encoded array of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the array length must equal `children`. Must not be passed when `children = 0`.\n\nExample: `[1, 3, 7]`\n", - "type": "string" -}
- Added
hasdata_google_travel_hotels_getGoogleHotels
8 tool updates
- Added
hasdata_booking_place_getBookingPlaceDetails - Added
hasdata_booking_search_getBookingSearchResults - Added
hasdata_google_maps_posts_getMapPosts - Changed
hasdata_redfin_listing_getRealEstateListings56 fields changed- added
Input schema / properties / bathsAdded value: +{ + "description": "The minimum number of bathrooms.", + "enum": [ + "one", + "oneAndHalf", + "two", + "twoAndHalf", + "three", + "four" + ], + "type": "string" +} - added
Input schema / properties / beds[max]Added value: +{ + "description": "The maximum number of bedrooms.", + "type": "number" +} - added
Input schema / properties / beds[min]Added value: +{ + "description": "The minimum number of bedrooms.", + "type": "number" +} - added
Input schema / properties / cost[acceptedFinancing]Added value: +{ + "description": "The accepted financing type.", + "enum": [ + "FHA", + "VA" + ], + "type": "string" +} - added
Input schema / properties / cost[excludeLandLeases]Added value: +{ + "description": "If set to true, listings with land leases will be excluded.", + "type": "boolean" +} - added
Input schema / properties / cost[hoa]Added value: +{ + "description": "The maximum monthly Homeowners Association (HOA) fee.", + "type": "number" +} - added
Input schema / properties / cost[maxPropertyTaxPerYear]Added value: +{ + "description": "The maximum property tax per year.", + "type": "number" +} - added
Input schema / properties / cost[pricePerSqft][max]Added value: +{ + "description": "The maximum price per square foot.", + "enum": [ + "50", + "100", + "150", + "200", + "250", + "300", + "400", + "500", + "600", + "800", + "1000", + "1400", + "1800", + "2200", + "2600", + "3000" + ], + "type": "string" +} - added
Input schema / properties / cost[pricePerSqft][min]Added value: +{ + "description": "The minimum price per square foot.", + "enum": [ + "50", + "100", + "150", + "200", + "250", + "300", + "400", + "500", + "600", + "800", + "1000", + "1400", + "1800", + "2200", + "2600", + "3000" + ], + "type": "string" +} - added
Input schema / properties / cost[priceReduced]Added value: +{ + "description": "Filter listings by when the price was reduced.", + "enum": [ + "inTheLastDay", + "inTheLast3Days", + "inTheLast7Days", + "inTheLast14Days", + "inTheLast30Days", + "moreThan30Days", + "moreThan60Days", + "moreThan120Days" + ], + "type": "string" +} - added
Input schema / properties / exclude55PlusCommunitiesAdded value: +{ + "description": "If set to true, 55+ communities will be excluded.", + "type": "boolean" +} - added
Input schema / properties / forRentSquareFootage[max]Added value: +{ + "description": "The maximum square footage for for-rent listings.", + "type": "number" +} - added
Input schema / properties / forRentSquareFootage[min]Added value: +{ + "description": "The minimum square footage for for-rent listings.", + "type": "number" +} - added
Input schema / properties / forSaleSquareFeet[max]Added value: +{ + "description": "The maximum square footage for for-sale listings.", + "enum": [ + "750", + "1000", + "1100", + "1200", + "1300", + "1400", + "1500", + "1600", + "1700", + "1800", + "1900", + "2000", + "2250", + "2500", + "2750", + "3000", + "4000", + "5000", + "7500", + "10000" + ], + "type": "string" +} - added
Input schema / properties / forSaleSquareFeet[min]Added value: +{ + "description": "The minimum square footage for for-sale listings.", + "enum": [ + "750", + "1000", + "1100", + "1200", + "1300", + "1400", + "1500", + "1600", + "1700", + "1800", + "1900", + "2000", + "2250", + "2500", + "2750", + "3000", + "4000", + "5000", + "7500", + "10000" + ], + "type": "string" +} - added
Input schema / properties / homeFeatures[basement]Added value: +{ + "description": "The basement type.", + "enum": [ + "finished", + "unfinished" + ], + "type": "string" +} - added
Input schema / properties / homeFeatures[garageSpotsMin]Added value: +{ + "description": "The minimum number of garage spots.", + "enum": [ + "1", + "2", + "3", + "4", + "5" + ], + "type": "string" +} - added
Input schema / properties / homeFeatures[keywordSearch]Added value: +{ + "description": "A free-text keyword search applied to listing descriptions.", + "type": "string" +} - added
Input schema / properties / homeFeatures[options][]Added value: +{ + "description": "An array of home feature flags to filter the listings.", + "items": { + "enum": [ + "airConditioning", + "waterfront", + "hasAView", + "fireplace", + "fixerUpper", + "guestHouse", + "elevator", + "washerDryerHookup", + "petsAllowed", + "primaryBedroomOnMainFloor", + "rvparking", + "greenHome", + "accessibleHome", + "includeOutdoorParking" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / homeFeatures[poolType]Added value: +{ + "description": "The type of pool.", + "enum": [ + "privatePool", + "communityPool", + "privateOrCommunityPool", + "noPrivatePool" + ], + "type": "string" +} - added
Input schema / properties / homeTypes[]Added value: +{ + "description": "An array of home types to filter the listings. Allowed values depend on the listing `type`.", + "items": { + "enum": [ + "house", + "townhouse", + "townhome", + "condo", + "land", + "multiFamily", + "mobile", + "coOp", + "other", + "apartment" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / listingType[category][]Added value: +{ + "description": "An array of listing categories.", + "items": { + "enum": [ + "byAgent", + "byOwnerFsbo", + "newConstruction", + "foreclosures" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / listingType[excludeShortSales]Added value: +{ + "description": "If set to true, short sales will be excluded.", + "type": "boolean" +} - added
Input schema / properties / listingType[redfinListingsOnly]Added value: +{ + "description": "If set to true, only Redfin-listed properties will be included.", + "type": "boolean" +} - added
Input schema / properties / lotSize[max]Added value: +{ + "description": "The maximum lot size.", + "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" +} - added
Input schema / properties / lotSize[min]Added value: +{ + "description": "The minimum lot size.", + "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" +} - added
Input schema / properties / monthlyPayment[downPaymentAmount]Added value: +{ + "description": "The down payment as an absolute amount.", + "type": "number" +} - added
Input schema / properties / monthlyPayment[downPaymentPercent]Added value: +{ + "description": "The down payment as a percentage of the home price.", + "type": "number" +} - added
Input schema / properties / monthlyPayment[insuranceRate]Added value: +{ + "description": "The home insurance rate (percent) used to calculate the monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment[interestRate]Added value: +{ + "description": "The mortgage interest rate (percent) used to calculate the monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment[max]Added value: +{ + "description": "The maximum monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment[min]Added value: +{ + "description": "The minimum monthly payment.", + "type": "number" +} - added
Input schema / properties / monthlyPayment[mortgageTerm]Added value: +{ + "description": "The mortgage term used to calculate the monthly payment.", + "enum": [ + "fixed15Years", + "fixed20Years", + "fixed30Years", + "fixed30YearsFha", + "fixed30YearsVa", + "fixed30YearsJumbo" + ], + "type": "string" +} - added
Input schema / properties / moveInDateAdded value: +{ + "description": "The desired move-in date in MM/DD/YYYY format.", + "type": "string" +} - added
Input schema / properties / onlyWithDealOrPromotionAdded value: +{ + "description": "If set to true, only listings with a deal or promotion will be included.", + "type": "boolean" +} - added
Input schema / properties / openHouseAndTour[openHouse]Added value: +{ + "description": "Filter listings with an open house.", + "enum": [ + "thisWeekend", + "anytime" + ], + "type": "string" +} - added
Input schema / properties / openHouseAndTour[videoTour]Added value: +{ + "description": "If set to true, only listings with a video tour will be included.", + "type": "boolean" +} - added
Input schema / properties / pets[]Added value: +{ + "description": "An array of pet types allowed.", + "items": { + "enum": [ + "dogsAllowed", + "catsAllowed" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / price[max]Added value: +{ + "description": "The maximum price of the listing.", + "type": "number" +} - added
Input schema / properties / price[min]Added value: +{ + "description": "The minimum price of the listing.", + "type": "number" +} - added
Input schema / properties / rentalAmenities[]Added value: +{ + "description": "An array of rental amenities to filter the listings.", + "items": { + "enum": [ + "airConditioning", + "dishwasher", + "inUnitWasherDryer", + "parkingAllowed", + "utilitiesIncluded", + "attFiber", + "furnished", + "laundryFacility", + "pool", + "washerDryerHookup" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / rentalOtherTerms[]Added value: +{ + "description": "An array of additional rental terms.", + "items": { + "enum": [ + "incomeRestricted", + "student", + "shortTerm", + "seniorLiving", + "military" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / schools[greatSchoolRating]Added value: +{ + "description": "The minimum GreatSchools rating (1-10).", + "type": "number" +} - added
Input schema / properties / schools[includeUnratedSchools]Added value: +{ + "description": "If set to true, unrated schools will be included.", + "type": "boolean" +} - added
Input schema / properties / schools[schoolType][]Added value: +{ + "description": "An array of school types.", + "items": { + "enum": [ + "elementary", + "middle", + "high" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / soldWithinOptionAdded value: +{ + "description": "Filter sold listings by how recently they were sold.", + "enum": [ + "lastOneWeek", + "lastOneMonth", + "lastThreeMonth", + "lastSixMonth", + "lastYear", + "lastTwoYear", + "lastThreeYear", + "lastFiveYear" + ], + "type": "string" +} - added
Input schema / properties / sortAdded value: +{ + "description": "The sorting option for the search results.", + "enum": [ + "recommended", + "newest", + "oldest", + "priceLowToHigh", + "priceHighToLow", + "minSquareFeet", + "maxSquareFeet", + "bedrooms", + "bathrooms", + "lotSize", + "squareFeetPrice", + "mostRecentlySold" + ], + "type": "string" +} - added
Input schema / properties / statusOptions[]Added value: +{ + "description": "An array of listing statuses.", + "items": { + "enum": [ + "active", + "comingSoon", + "contingentPending" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / stories[max]Added value: +{ + "description": "The maximum number of stories.", + "enum": [ + "1", + "2", + "3", + "4", + "5", + "10", + "15", + "20" + ], + "type": "string" +} - added
Input schema / properties / stories[min]Added value: +{ + "description": "The minimum number of stories.", + "enum": [ + "1", + "2", + "3", + "4", + "5", + "10", + "15", + "20" + ], + "type": "string" +} - added
Input schema / properties / timeOnRedfinAdded value: +{ + "description": "How long the listing has been on Redfin.", + "enum": [ + "newListing", + "lessThan3Days", + "lessThan7Days", + "lessThan14Days", + "lessThan30Days", + "moreThan7Days", + "moreThan14Days", + "moreThan30Days", + "moreThan45Days", + "moreThan60Days", + "moreThan90Days", + "moreThan180Days" + ], + "type": "string" +} - added
Input schema / properties / transportScores[bikeScore]Added value: +{ + "description": "The minimum bike score (1-100).", + "type": "number" +} - added
Input schema / properties / transportScores[transitScore]Added value: +{ + "description": "The minimum transit score (1-100).", + "type": "number" +} - added
Input schema / properties / transportScores[walkScore]Added value: +{ + "description": "The minimum walk score (1-100).", + "type": "number" +} - added
Input schema / properties / yearBuilt[max]Added value: +{ + "description": "The maximum year the property was built.", + "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" +} - added
Input schema / properties / yearBuilt[min]Added value: +{ + "description": "The minimum year the property was built.", + "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" +}
- Added
hasdata_youtube_channel_getYoutubeChannel - Added
hasdata_youtube_search_getYoutubeSearchResults - Added
hasdata_youtube_transcript_getYoutubeTranscript - Added
hasdata_youtube_video_getYoutubeVideo
42 tool updates
- First observed
hasdata_airbnb_listing_getAirbnbListings - First observed
hasdata_airbnb_property_getAirbnbPropertyDetails - First observed
hasdata_amazon_product_getProductDetails - First observed
hasdata_amazon_reviews_getProductReviews - First observed
hasdata_amazon_search_getSearchResults - First observed
hasdata_amazon_seller_getSellerDetails - First observed
hasdata_amazon_seller_products_getSellerProducts - First observed
hasdata_bing_serp_getSearchResults - First observed
hasdata_glassdoor_job_getJobDetails - First observed
hasdata_glassdoor_listing_getJobListings - First observed
hasdata_google_images_images_getImageSearchResults - First observed
hasdata_google_maps_contributor_reviews_getMapReviews - First observed
hasdata_google_maps_photos_getMapPhotos - First observed
hasdata_google_maps_place_getPlaceDetails - First observed
hasdata_google_maps_reviews_getMapReviews - First observed
hasdata_google_maps_search_performMapSearch - First observed
hasdata_google_serp_ai_mode_getAiModeResponse - First observed
hasdata_google_serp_ai_overview_getAiOverviewResponse - First observed
hasdata_google_serp_events_getEventInformation - First observed
hasdata_google_serp_immersive_product_getImmersive_e29f691177 - First observed
hasdata_google_serp_news_getGoogleNews - First observed
hasdata_google_serp_product_getProductInformation - First observed
hasdata_google_serp_serp_getSearchResults - First observed
hasdata_google_serp_serp_light_getSearchResults - First observed
hasdata_google_serp_shopping_getSearchResults - First observed
hasdata_google_serp_short_videos_getShortVideosSearchResults - First observed
hasdata_google_travel_flights_getGoogleFlights - First observed
hasdata_google_trends_search_getTrendsData - First observed
hasdata_indeed_job_getJobDetails - First observed
hasdata_indeed_listing_getJobListings - First observed
hasdata_instagram_profile_getInstagramProfile - First observed
hasdata_redfin_listing_getRealEstateListings - First observed
hasdata_redfin_property_getPropertyDetails - First observed
hasdata_shopify_collections_getCollections - First observed
hasdata_shopify_products_getProducts - First observed
hasdata_web_scraping_web_scraping_scrapeWebPage - First observed
hasdata_yellowpages_place_getPlaceDetails - First observed
hasdata_yellowpages_search_getSearchResults - First observed
hasdata_yelp_place_getPlaceDetails - First observed
hasdata_yelp_search_getSearchResults - First observed
hasdata_zillow_listing_getRealEstateListings - First observed
hasdata_zillow_property_getPropertyDetails
Related MCP Connectors
Live web access for agents: scrape, SERP search, crawl/map, 100+ collectors, datasets, proxies.
Web data for agents: YouTube transcripts, screenshots, Google News, WHOIS, jobs, tech stack, more.
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Public web data for AI agents: scrape any page, plus Google, TikTok, Instagram and Amazon as JSON.
Related MCP Servers
AlicenseAqualityAmaintenanceDirect access to 40+ scraping and search tools. Extract structured data from Google (Search, Maps, Trends), Amazon, Airbnb, Social Media, and any web page directly into your AI agent.6320MIT- AlicenseAqualityBmaintenanceEnables AI agents and assistants to extract data from social media, search engines, maps, e-commerce sites, and any other website by running thousands of ready-made scrapers, crawlers, and automation tools as callable tools, with OAuth-based connection and optional agentic payments.1117,093 npm2MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to perform anti-bot web scraping, dynamic SPA rendering, YouTube transcript extraction, and deep OSINT/GEOINT intelligence gathering through 23 integrated tools.-
- AlicenseAqualityCmaintenanceEnables AI agents to crawl, scrape, search, and automate browsers with anti-bot bypass, providing fast web access via 22 tools.2226 npm3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.