Skip to main content
Glama

Show vacation homes

render_properties
Read-onlyIdempotent

Re-show one to six selected homes only when the traveler requests a subset, photos again or a comparison of homes already found. search_properties already displays cards; avoid a redundant render after search. Pass the original structured search arguments in searchContext when re-showing a selected subset so explorer refinements retain destination, party and filters. Omit context for unrelated saved homes. Rechecks publication and shows Details and host booking links, without fetching quotes or prices. Rendered cards remain price-free even if the copied searchContext includes dates and quoteMode; do not imply a quote is displayed. After displaying cards, default to 1–3 short sentences, usually under 60 words unless the traveler requests a detailed comparison: explain a helpful fit or next choice, and include only a material price/availability caveat or a necessary question. Do not repeat result counts, card facts or the home list unless the traveler asks for a textual comparison. Do not narrate tools called or not called, backend mechanics, or your process. Keep operational checks internal; disclose material uncertainty and pricing assumptions plainly when they affect the traveler’s decision.

Input Schema

NameRequiredDescriptionDefault
idsYes
localeNoen
searchContextNoOriginal structured search arguments when re-showing a selected subset. Preserves explorer refinements; does not fetch prices or quotes.

Output Schema

NameRequiredDescriptionDefault
localeYes
missingIdsNo
propertiesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / searchContext / properties / reassessPropertyIds
      Added value: +{
      +  "description": "Up to four previously discussed public property IDs to reassess against this semantic request alongside fresh matches. Use when refining or comparing earlier suggestions. This reserves comparison slots only: current factual filters, indexed source ownership and every essential requirement still apply. It does not keep an old recommendation or establish fit. Omit for a new search without earlier candidates to reassess.",
      +  "items": {
      +    "maxLength": 160,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "maxItems": 4,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / properties / searchContext / properties / semantic
      Added value: +{
      +  "description": "Rank indexed, eligible homes by text and photo similarity. Does not establish hard facts; no lexical fallback when unavailable.",
      +  "maxLength": 4000,
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedInput schema / properties / searchContext / properties / semanticPreferences
      Added value: +{
      +  "description": "Individual experiential preferences, each copied verbatim from semantic. Interpret the traveler in context: separate requested preferences without adding needs. Keep related words together when they describe one room, view or relationship. These are questions to assess, not property facts; omit for factual-only searches.",
      +  "items": {
      +    "maxLength": 350,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "maxItems": 8,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / properties / searchContext / properties / semanticRequirements
      Added value: +{
      +  "description": "Essential trip requirements, each copied verbatim from semantic with all relationship and provenance qualifiers. Every one must have source-backed support before a home is returned. Preserve these from the conversation; ordinary preferences belong in semanticPreferences. Omit when no essential experiential requirements were stated. Interpret semanticRequirements as conditions the accommodation or its setting must satisfy. Preserve essential support for the traveler's primary activity and access needs, including when expressed indirectly. Preserve the traveler's complete context in semantic. When the traveler states an explicit offering condition together with their own plans, circumstances or reasons, copy the complete offering condition as the essential; do not create an additional standalone proof obligation for the traveler's plan or circumstance. Keep any context necessary to understand the condition, its scope and relationships. Do not broaden a specific access requirement into proof of every aspect of the trip, and do not drop an actual offering condition because it is motivated by a traveler's circumstances. When a circumstance leaves the required accommodation or access condition ambiguous, ask one short clarifying question before searching; do not submit the circumstance itself as a property-proof requirement. If the offering condition itself is ambiguous, clarify it in the real conversation instead of inventing a stricter condition.",
      +  "items": {
      +    "maxLength": 350,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "maxItems": 8,
      +  "minItems": 1,
      +  "type": "array"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / searchContext
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Original structured search arguments when re-showing a selected subset. Preserves explorer refinements; does not fetch prices or quotes.",
      +  "properties": {
      +    "amenities": {
      +      "default": "",
      +      "description": "Comma-separated amenity keys; every requested amenity must be explicitly present.",
      +      "maxLength": 240,
      +      "type": "string"
      +    },
      +    "arrival": {
      +      "format": "date",
      +      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +      "type": "string"
      +    },
      +    "bounds": {
      +      "default": "",
      +      "description": "Map viewport as south,west,north,east in degrees; keeps homes whose public area center is inside it. West greater than east crosses the antimeridian.",
      +      "maxLength": 80,
      +      "pattern": "^$|^-?\\d{1,3}(\\.\\d{1,6})?(,-?\\d{1,3}(\\.\\d{1,6})?){3}$",
      +      "type": "string"
      +    },
      +    "city": {
      +      "default": "",
      +      "maxLength": 160,
      +      "type": "string"
      +    },
      +    "country": {
      +      "default": "",
      +      "maxLength": 160,
      +      "type": "string"
      +    },
      +    "currency": {
      +      "enum": [
      +        "USD",
      +        "EUR",
      +        "GBP",
      +        "CRC",
      +        "MXN",
      +        "COP",
      +        "PEN",
      +        "BRL",
      +        "AUD"
      +      ],
      +      "type": "string"
      +    },
      +    "departure": {
      +      "format": "date",
      +      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +      "type": "string"
      +    },
      +    "estimateNights": {
      +      "description": "Sample-stay nights, required. Only with quoteMode:estimate.",
      +      "maximum": 30,
      +      "minimum": 1,
      +      "type": "integer"
      +    },
      +    "estimateWindowEnd": {
      +      "description": "Latest sample departure (YYYY-MM-DD), paired with estimateWindowStart. Window must fit estimateNights (required), at most 150 days.",
      +      "format": "date",
      +      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +      "type": "string"
      +    },
      +    "estimateWindowStart": {
      +      "description": "Earliest sample arrival (YYYY-MM-DD), paired with estimateWindowEnd. Only with quoteMode:estimate. Preserve the traveler's flexible month or date range.",
      +      "format": "date",
      +      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +      "type": "string"
      +    },
      +    "feature": {
      +      "default": "",
      +      "description": "Collection key from the filter catalog.",
      +      "enum": [
      +        "",
      +        "private-pools",
      +        "room-for-4",
      +        "room-for-6",
      +        "room-for-8",
      +        "room-for-10",
      +        "2-bedrooms",
      +        "3-bedrooms",
      +        "4-bedrooms",
      +        "pets",
      +        "air-conditioning",
      +        "workspace",
      +        "step-free"
      +      ],
      +      "type": "string"
      +    },
      +    "guests": {
      +      "description": "Minimum sleeping capacity; required actual party size when requesting quote enrichment.",
      +      "maximum": 100,
      +      "minimum": 1,
      +      "type": "integer"
      +    },
      +    "locale": {
      +      "default": "en",
      +      "enum": [
      +        "en",
      +        "es"
      +      ],
      +      "type": "string"
      +    },
      +    "minBathrooms": {
      +      "maximum": 50,
      +      "minimum": 0.5,
      +      "multipleOf": 0.5,
      +      "type": "number"
      +    },
      +    "minBedrooms": {
      +      "maximum": 50,
      +      "minimum": 1,
      +      "type": "integer"
      +    },
      +    "organization": {
      +      "default": "",
      +      "description": "Exact organization slug returned on a property or in get_filters. Restricts results to that organization, across destinations.",
      +      "maxLength": 160,
      +      "type": "string"
      +    },
      +    "page": {
      +      "default": 1,
      +      "maximum": 1000,
      +      "minimum": 1,
      +      "type": "integer"
      +    },
      +    "place": {
      +      "default": "",
      +      "description": "Place key from the live filter catalog.",
      +      "maxLength": 240,
      +      "type": "string"
      +    },
      +    "pool": {
      +      "default": "",
      +      "enum": [
      +        "",
      +        "present",
      +        "private",
      +        "shared",
      +        "absent"
      +      ],
      +      "type": "string"
      +    },
      +    "q": {
      +      "default": "",
      +      "description": "Search public property names, locations and approved introduction text.",
      +      "maxLength": 160,
      +      "type": "string"
      +    },
      +    "quoteMode": {
      +      "description": "Optional price/availability enrichment. exact uses supplied dates and guests; estimate requires estimateWindowStart, estimateWindowEnd, estimateNights and guests for a clearly labeled sample within supplied flexible bounds. Search does not wait for every host or filter unknown homes out.",
      +      "enum": [
      +        "exact",
      +        "estimate"
      +      ],
      +      "type": "string"
      +    },
      +    "region": {
      +      "default": "",
      +      "maxLength": 160,
      +      "type": "string"
      +    },
      +    "relatedTo": {
      +      "default": "",
      +      "description": "Published property ID. Find other homes from its organization, same locality first, then region/country and other locations. Excludes the source property. Additional filters still combine with AND.",
      +      "maxLength": 160,
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  3. Changed1 schema field changed
    • changedOutput schema / properties / properties / items / properties / stayQuote / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "basis": {
      -        "const": "exact",
      -        "type": "string"
      -      },
      -      "quote": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "arrival": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "availability": {
      -                "enum": [
      -                  "available",
      -                  "unavailable",
      -                  "unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "bookingUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "checkedAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "departure": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "expiresAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "guests": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "held": {
      -                "const": false,
      -                "type": "boolean"
      -              },
      -              "minimumNights": {
      -                "anyOf": [
      -                  {
      -                    "exclusiveMinimum": 0,
      -                    "maximum": 9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "nights": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "partyBasis": {
      -                "const": "all_adults",
      -                "type": "string"
      -              },
      -              "price": {
      -                "anyOf": [
      -                  {
      -                    "additionalProperties": false,
      -                    "properties": {
      -                      "breakdown": {
      -                        "items": {
      -                          "additionalProperties": false,
      -                          "properties": {
      -                            "amount": {
      -                              "type": "number"
      -                            },
      -                            "label": {
      -                              "maxLength": 160,
      -                              "minLength": 1,
      -                              "type": "string"
      -                            }
      -                          },
      -                          "required": [
      -                            "label",
      -                            "amount"
      -                          ],
      -                          "type": "object"
      -                        },
      -                        "maxItems": 30,
      -                        "type": "array"
      -                      },
      -                      "completeness": {
      -                        "enum": [
      -                          "total",
      -                          "partial"
      -                        ],
      -                        "type": "string"
      -                      },
      -                      "currency": {
      -                        "pattern": "^[A-Z]{3}$",
      -                        "type": "string"
      -                      },
      -                      "taxesIncluded": {
      -                        "anyOf": [
      -                          {
      -                            "type": "boolean"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      },
      -                      "total": {
      -                        "minimum": 0,
      -                        "type": "number"
      -                      }
      -                    },
      -                    "required": [
      -                      "currency",
      -                      "total",
      -                      "breakdown",
      -                      "completeness",
      -                      "taxesIncluded"
      -                    ],
      -                    "type": "object"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "propertyId": {
      -                "type": "string"
      -              },
      -              "reason": {
      -                "enum": [
      -                  "checked",
      -                  "blocked_dates",
      -                  "minimum_stay",
      -                  "maximum_stay",
      -                  "arrival_departure_rules",
      -                  "advance_notice",
      -                  "capacity",
      -                  "unsupported_host",
      -                  "browser_unconfigured",
      -                  "upstream_unavailable",
      -                  "date_range_unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "sourceUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "startingNightlyPrice": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "amount": {
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "currency": {
      -                    "pattern": "^[A-Z]{3}$",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "currency",
      -                  "amount"
      -                ],
      -                "type": "object"
      -              }
      -            },
      -            "required": [
      -              "propertyId",
      -              "arrival",
      -              "departure",
      -              "guests",
      -              "nights",
      -              "availability",
      -              "reason",
      -              "minimumNights",
      -              "price",
      -              "checkedAt",
      -              "expiresAt",
      -              "sourceUrl",
      -              "bookingUrl",
      -              "held"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "request": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "arrival": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "currency": {
      -            "enum": [
      -              "USD",
      -              "EUR",
      -              "GBP",
      -              "CRC",
      -              "MXN",
      -              "COP",
      -              "PEN",
      -              "BRL"
      -            ],
      -            "type": "string"
      -          },
      -          "departure": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "execution": {
      -            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      -            "enum": [
      -              "auto",
      -              "browser"
      -            ],
      -            "type": "string"
      -          },
      -          "guests": {
      -            "maximum": 200,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "id": {
      -            "maxLength": 160,
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "id",
      -          "arrival",
      -          "departure",
      -          "guests"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "enum": [
      -          "ready",
      -          "pending",
      -          "not_checked",
      -          "limited"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "basis",
      -      "status",
      -      "request",
      -      "quote"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "basis": {
      -        "const": "sample",
      -        "type": "string"
      -      },
      -      "diagnostics": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "attemptedStays": {
      -            "maximum": 4,
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          "reason": {
      -            "description": "Last sampled observation when no dated total was selected. Applies only to attempted stays; blocked samples never establish that the whole window is sold out. Terminal unsupported_host/upstream_unavailable evidence should be explained, not retried unchanged.",
      -            "enum": [
      -              "checked",
      -              "blocked_dates",
      -              "minimum_stay",
      -              "maximum_stay",
      -              "arrival_departure_rules",
      -              "advance_notice",
      -              "capacity",
      -              "unsupported_host",
      -              "browser_unconfigured",
      -              "upstream_unavailable",
      -              "date_range_unknown"
      -            ],
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "attemptedStays"
      -        ],
      -        "type": "object"
      -      },
      -      "estimate": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "currency": {
      -            "enum": [
      -              "USD",
      -              "EUR",
      -              "GBP",
      -              "CRC",
      -              "MXN",
      -              "COP",
      -              "PEN",
      -              "BRL"
      -            ],
      -            "type": "string"
      -          },
      -          "guests": {
      -            "maximum": 200,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "id": {
      -            "maxLength": 160,
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "nights": {
      -            "maximum": 30,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "windowEnd": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "windowStart": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "id",
      -          "windowStart",
      -          "windowEnd",
      -          "nights",
      -          "guests"
      -        ],
      -        "type": "object"
      -      },
      -      "quote": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "arrival": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "availability": {
      -                "enum": [
      -                  "available",
      -                  "unavailable",
      -                  "unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "bookingUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "checkedAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "departure": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "expiresAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "guests": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "held": {
      -                "const": false,
      -                "type": "boolean"
      -              },
      -              "minimumNights": {
      -                "anyOf": [
      -                  {
      -                    "exclusiveMinimum": 0,
      -                    "maximum": 9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "nights": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "partyBasis": {
      -                "const": "all_adults",
      -                "type": "string"
      -              },
      -              "price": {
      -                "anyOf": [
      -                  {
      -                    "additionalProperties": false,
      -                    "properties": {
      -                      "breakdown": {
      -                        "items": {
      -                          "additionalProperties": false,
      -                          "properties": {
      -                            "amount": {
      -                              "type": "number"
      -                            },
      -                            "label": {
      -                              "maxLength": 160,
      -                              "minLength": 1,
      -                              "type": "string"
      -                            }
      -                          },
      -                          "required": [
      -                            "label",
      -                            "amount"
      -                          ],
      -                          "type": "object"
      -                        },
      -                        "maxItems": 30,
      -                        "type": "array"
      -                      },
      -                      "completeness": {
      -                        "enum": [
      -                          "total",
      -                          "partial"
      -                        ],
      -                        "type": "string"
      -                      },
      -                      "currency": {
      -                        "pattern": "^[A-Z]{3}$",
      -                        "type": "string"
      -                      },
      -                      "taxesIncluded": {
      -                        "anyOf": [
      -                          {
      -                            "type": "boolean"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      },
      -                      "total": {
      -                        "minimum": 0,
      -                        "type": "number"
      -                      }
      -                    },
      -                    "required": [
      -                      "currency",
      -                      "total",
      -                      "breakdown",
      -                      "completeness",
      -                      "taxesIncluded"
      -                    ],
      -                    "type": "object"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "propertyId": {
      -                "type": "string"
      -              },
      -              "reason": {
      -                "enum": [
      -                  "checked",
      -                  "blocked_dates",
      -                  "minimum_stay",
      -                  "maximum_stay",
      -                  "arrival_departure_rules",
      -                  "advance_notice",
      -                  "capacity",
      -                  "unsupported_host",
      -                  "browser_unconfigured",
      -                  "upstream_unavailable",
      -                  "date_range_unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "sourceUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "startingNightlyPrice": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "amount": {
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "currency": {
      -                    "pattern": "^[A-Z]{3}$",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "currency",
      -                  "amount"
      -                ],
      -                "type": "object"
      -              }
      -            },
      -            "required": [
      -              "propertyId",
      -              "arrival",
      -              "departure",
      -              "guests",
      -              "nights",
      -              "availability",
      -              "reason",
      -              "minimumNights",
      -              "price",
      -              "checkedAt",
      -              "expiresAt",
      -              "sourceUrl",
      -              "bookingUrl",
      -              "held"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "request": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "arrival": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "currency": {
      -            "enum": [
      -              "USD",
      -              "EUR",
      -              "GBP",
      -              "CRC",
      -              "MXN",
      -              "COP",
      -              "PEN",
      -              "BRL"
      -            ],
      -            "type": "string"
      -          },
      -          "departure": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "execution": {
      -            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      -            "enum": [
      -              "auto",
      -              "browser"
      -            ],
      -            "type": "string"
      -          },
      -          "guests": {
      -            "maximum": 200,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "id": {
      -            "maxLength": 160,
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "id",
      -          "arrival",
      -          "departure",
      -          "guests"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "enum": [
      -          "ready",
      -          "pending",
      -          "not_checked",
      -          "limited"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "basis",
      -      "status",
      -      "request",
      -      "quote",
      -      "estimate"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "basis": {
      +        "const": "exact",
      +        "type": "string"
      +      },
      +      "quote": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "arrival": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "availability": {
      +                "enum": [
      +                  "available",
      +                  "unavailable",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "bookingUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "checkedAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "departure": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "expiresAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "guests": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "held": {
      +                "const": false,
      +                "type": "boolean"
      +              },
      +              "minimumNights": {
      +                "anyOf": [
      +                  {
      +                    "exclusiveMinimum": 0,
      +                    "maximum": 9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "nights": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "partyBasis": {
      +                "const": "all_adults",
      +                "type": "string"
      +              },
      +              "price": {
      +                "anyOf": [
      +                  {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "breakdown": {
      +                        "items": {
      +                          "additionalProperties": false,
      +                          "properties": {
      +                            "amount": {
      +                              "type": "number"
      +                            },
      +                            "label": {
      +                              "maxLength": 160,
      +                              "minLength": 1,
      +                              "type": "string"
      +                            }
      +                          },
      +                          "required": [
      +                            "label",
      +                            "amount"
      +                          ],
      +                          "type": "object"
      +                        },
      +                        "maxItems": 30,
      +                        "type": "array"
      +                      },
      +                      "completeness": {
      +                        "enum": [
      +                          "total",
      +                          "partial"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "currency": {
      +                        "pattern": "^[A-Z]{3}$",
      +                        "type": "string"
      +                      },
      +                      "taxesIncluded": {
      +                        "anyOf": [
      +                          {
      +                            "type": "boolean"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "total": {
      +                        "minimum": 0,
      +                        "type": "number"
      +                      }
      +                    },
      +                    "required": [
      +                      "currency",
      +                      "total",
      +                      "breakdown",
      +                      "completeness",
      +                      "taxesIncluded"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "propertyId": {
      +                "type": "string"
      +              },
      +              "reason": {
      +                "enum": [
      +                  "checked",
      +                  "blocked_dates",
      +                  "minimum_stay",
      +                  "maximum_stay",
      +                  "arrival_departure_rules",
      +                  "advance_notice",
      +                  "capacity",
      +                  "unsupported_host",
      +                  "browser_unconfigured",
      +                  "upstream_unavailable",
      +                  "date_range_unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "sourceUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "startingNightlyPrice": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "amount": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "currency": {
      +                    "pattern": "^[A-Z]{3}$",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "currency",
      +                  "amount"
      +                ],
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "propertyId",
      +              "arrival",
      +              "departure",
      +              "guests",
      +              "nights",
      +              "availability",
      +              "reason",
      +              "minimumNights",
      +              "price",
      +              "checkedAt",
      +              "expiresAt",
      +              "sourceUrl",
      +              "bookingUrl",
      +              "held"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "request": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "arrival": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "currency": {
      +            "enum": [
      +              "USD",
      +              "EUR",
      +              "GBP",
      +              "CRC",
      +              "MXN",
      +              "COP",
      +              "PEN",
      +              "BRL",
      +              "AUD"
      +            ],
      +            "type": "string"
      +          },
      +          "departure": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "execution": {
      +            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      +            "enum": [
      +              "auto",
      +              "browser"
      +            ],
      +            "type": "string"
      +          },
      +          "guests": {
      +            "maximum": 200,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "id": {
      +            "maxLength": 160,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "arrival",
      +          "departure",
      +          "guests"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "enum": [
      +          "ready",
      +          "pending",
      +          "not_checked",
      +          "limited"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "basis",
      +      "status",
      +      "request",
      +      "quote"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "basis": {
      +        "const": "sample",
      +        "type": "string"
      +      },
      +      "diagnostics": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "attemptedStays": {
      +            "maximum": 4,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "reason": {
      +            "description": "Last sampled observation when no dated total was selected. Applies only to attempted stays; blocked samples never establish that the whole window is sold out. Terminal unsupported_host/upstream_unavailable evidence should be explained, not retried unchanged.",
      +            "enum": [
      +              "checked",
      +              "blocked_dates",
      +              "minimum_stay",
      +              "maximum_stay",
      +              "arrival_departure_rules",
      +              "advance_notice",
      +              "capacity",
      +              "unsupported_host",
      +              "browser_unconfigured",
      +              "upstream_unavailable",
      +              "date_range_unknown"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "attemptedStays"
      +        ],
      +        "type": "object"
      +      },
      +      "estimate": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "currency": {
      +            "enum": [
      +              "USD",
      +              "EUR",
      +              "GBP",
      +              "CRC",
      +              "MXN",
      +              "COP",
      +              "PEN",
      +              "BRL",
      +              "AUD"
      +            ],
      +            "type": "string"
      +          },
      +          "guests": {
      +            "maximum": 200,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "id": {
      +            "maxLength": 160,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "nights": {
      +            "maximum": 30,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "windowEnd": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "windowStart": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "windowStart",
      +          "windowEnd",
      +          "nights",
      +          "guests"
      +        ],
      +        "type": "object"
      +      },
      +      "quote": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "arrival": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "availability": {
      +                "enum": [
      +                  "available",
      +                  "unavailable",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "bookingUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "checkedAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "departure": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "expiresAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "guests": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "held": {
      +                "const": false,
      +                "type": "boolean"
      +              },
      +              "minimumNights": {
      +                "anyOf": [
      +                  {
      +                    "exclusiveMinimum": 0,
      +                    "maximum": 9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "nights": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "partyBasis": {
      +                "const": "all_adults",
      +                "type": "string"
      +              },
      +              "price": {
      +                "anyOf": [
      +                  {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "breakdown": {
      +                        "items": {
      +                          "additionalProperties": false,
      +                          "properties": {
      +                            "amount": {
      +                              "type": "number"
      +                            },
      +                            "label": {
      +                              "maxLength": 160,
      +                              "minLength": 1,
      +                              "type": "string"
      +                            }
      +                          },
      +                          "required": [
      +                            "label",
      +                            "amount"
      +                          ],
      +                          "type": "object"
      +                        },
      +                        "maxItems": 30,
      +                        "type": "array"
      +                      },
      +                      "completeness": {
      +                        "enum": [
      +                          "total",
      +                          "partial"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "currency": {
      +                        "pattern": "^[A-Z]{3}$",
      +                        "type": "string"
      +                      },
      +                      "taxesIncluded": {
      +                        "anyOf": [
      +                          {
      +                            "type": "boolean"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "total": {
      +                        "minimum": 0,
      +                        "type": "number"
      +                      }
      +                    },
      +                    "required": [
      +                      "currency",
      +                      "total",
      +                      "breakdown",
      +                      "completeness",
      +                      "taxesIncluded"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "propertyId": {
      +                "type": "string"
      +              },
      +              "reason": {
      +                "enum": [
      +                  "checked",
      +                  "blocked_dates",
      +                  "minimum_stay",
      +                  "maximum_stay",
      +                  "arrival_departure_rules",
      +                  "advance_notice",
      +                  "capacity",
      +                  "unsupported_host",
      +                  "browser_unconfigured",
      +                  "upstream_unavailable",
      +                  "date_range_unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "sourceUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "startingNightlyPrice": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "amount": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "currency": {
      +                    "pattern": "^[A-Z]{3}$",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "currency",
      +                  "amount"
      +                ],
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "propertyId",
      +              "arrival",
      +              "departure",
      +              "guests",
      +              "nights",
      +              "availability",
      +              "reason",
      +              "minimumNights",
      +              "price",
      +              "checkedAt",
      +              "expiresAt",
      +              "sourceUrl",
      +              "bookingUrl",
      +              "held"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "request": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "arrival": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "currency": {
      +            "enum": [
      +              "USD",
      +              "EUR",
      +              "GBP",
      +              "CRC",
      +              "MXN",
      +              "COP",
      +              "PEN",
      +              "BRL",
      +              "AUD"
      +            ],
      +            "type": "string"
      +          },
      +          "departure": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "execution": {
      +            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      +            "enum": [
      +              "auto",
      +              "browser"
      +            ],
      +            "type": "string"
      +          },
      +          "guests": {
      +            "maximum": 200,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "id": {
      +            "maxLength": 160,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "arrival",
      +          "departure",
      +          "guests"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "enum": [
      +          "ready",
      +          "pending",
      +          "not_checked",
      +          "limited"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "basis",
      +      "status",
      +      "request",
      +      "quote",
      +      "estimate"
      +    ],
      +    "type": "object"
      +  }
      +]
  4. Changed1 schema field changed
    • changedOutput schema / properties / properties / items / properties / stayQuote / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "basis": {
      -        "const": "exact",
      -        "type": "string"
      -      },
      -      "quote": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "arrival": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "availability": {
      -                "enum": [
      -                  "available",
      -                  "unavailable",
      -                  "unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "bookingUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "checkedAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "departure": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "expiresAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "guests": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "held": {
      -                "const": false,
      -                "type": "boolean"
      -              },
      -              "minimumNights": {
      -                "anyOf": [
      -                  {
      -                    "exclusiveMinimum": 0,
      -                    "maximum": 9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "nights": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "partyBasis": {
      -                "const": "all_adults",
      -                "type": "string"
      -              },
      -              "price": {
      -                "anyOf": [
      -                  {
      -                    "additionalProperties": false,
      -                    "properties": {
      -                      "breakdown": {
      -                        "items": {
      -                          "additionalProperties": false,
      -                          "properties": {
      -                            "amount": {
      -                              "type": "number"
      -                            },
      -                            "label": {
      -                              "maxLength": 160,
      -                              "minLength": 1,
      -                              "type": "string"
      -                            }
      -                          },
      -                          "required": [
      -                            "label",
      -                            "amount"
      -                          ],
      -                          "type": "object"
      -                        },
      -                        "maxItems": 30,
      -                        "type": "array"
      -                      },
      -                      "completeness": {
      -                        "enum": [
      -                          "total",
      -                          "partial"
      -                        ],
      -                        "type": "string"
      -                      },
      -                      "currency": {
      -                        "pattern": "^[A-Z]{3}$",
      -                        "type": "string"
      -                      },
      -                      "taxesIncluded": {
      -                        "anyOf": [
      -                          {
      -                            "type": "boolean"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      },
      -                      "total": {
      -                        "minimum": 0,
      -                        "type": "number"
      -                      }
      -                    },
      -                    "required": [
      -                      "currency",
      -                      "total",
      -                      "breakdown",
      -                      "completeness",
      -                      "taxesIncluded"
      -                    ],
      -                    "type": "object"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "propertyId": {
      -                "type": "string"
      -              },
      -              "reason": {
      -                "enum": [
      -                  "checked",
      -                  "blocked_dates",
      -                  "minimum_stay",
      -                  "maximum_stay",
      -                  "arrival_departure_rules",
      -                  "advance_notice",
      -                  "capacity",
      -                  "unsupported_host",
      -                  "browser_unconfigured",
      -                  "upstream_unavailable",
      -                  "date_range_unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "sourceUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "startingNightlyPrice": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "amount": {
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "currency": {
      -                    "pattern": "^[A-Z]{3}$",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "currency",
      -                  "amount"
      -                ],
      -                "type": "object"
      -              }
      -            },
      -            "required": [
      -              "propertyId",
      -              "arrival",
      -              "departure",
      -              "guests",
      -              "nights",
      -              "availability",
      -              "reason",
      -              "minimumNights",
      -              "price",
      -              "checkedAt",
      -              "expiresAt",
      -              "sourceUrl",
      -              "bookingUrl",
      -              "held"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "request": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "arrival": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "currency": {
      -            "enum": [
      -              "USD",
      -              "EUR",
      -              "GBP",
      -              "CRC",
      -              "MXN",
      -              "COP",
      -              "PEN",
      -              "BRL"
      -            ],
      -            "type": "string"
      -          },
      -          "departure": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "execution": {
      -            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      -            "enum": [
      -              "auto",
      -              "browser"
      -            ],
      -            "type": "string"
      -          },
      -          "guests": {
      -            "maximum": 200,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "id": {
      -            "maxLength": 160,
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "id",
      -          "arrival",
      -          "departure",
      -          "guests"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "enum": [
      -          "ready",
      -          "pending",
      -          "not_checked",
      -          "limited"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "basis",
      -      "status",
      -      "request",
      -      "quote"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "basis": {
      -        "const": "sample",
      -        "type": "string"
      -      },
      -      "estimate": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "currency": {
      -            "enum": [
      -              "USD",
      -              "EUR",
      -              "GBP",
      -              "CRC",
      -              "MXN",
      -              "COP",
      -              "PEN",
      -              "BRL"
      -            ],
      -            "type": "string"
      -          },
      -          "guests": {
      -            "maximum": 200,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "id": {
      -            "maxLength": 160,
      -            "minLength": 1,
      -            "type": "string"
      -          },
      -          "nights": {
      -            "maximum": 30,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "windowEnd": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "windowStart": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "id",
      -          "windowStart",
      -          "windowEnd",
      -          "nights",
      -          "guests"
      -        ],
      -        "type": "object"
      -      },
      -      "quote": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "arrival": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "availability": {
      -                "enum": [
      -                  "available",
      -                  "unavailable",
      -                  "unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "bookingUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "checkedAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "departure": {
      -                "format": "date",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -                "type": "string"
      -              },
      -              "expiresAt": {
      -                "format": "date-time",
      -                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      -                "type": "string"
      -              },
      -              "guests": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "held": {
      -                "const": false,
      -                "type": "boolean"
      -              },
      -              "minimumNights": {
      -                "anyOf": [
      -                  {
      -                    "exclusiveMinimum": 0,
      -                    "maximum": 9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "nights": {
      -                "maximum": 9007199254740991,
      -                "minimum": -9007199254740991,
      -                "type": "integer"
      -              },
      -              "partyBasis": {
      -                "const": "all_adults",
      -                "type": "string"
      -              },
      -              "price": {
      -                "anyOf": [
      -                  {
      -                    "additionalProperties": false,
      -                    "properties": {
      -                      "breakdown": {
      -                        "items": {
      -                          "additionalProperties": false,
      -                          "properties": {
      -                            "amount": {
      -                              "type": "number"
      -                            },
      -                            "label": {
      -                              "maxLength": 160,
      -                              "minLength": 1,
      -                              "type": "string"
      -                            }
      -                          },
      -                          "required": [
      -                            "label",
      -                            "amount"
      -                          ],
      -                          "type": "object"
      -                        },
      -                        "maxItems": 30,
      -                        "type": "array"
      -                      },
      -                      "completeness": {
      -                        "enum": [
      -                          "total",
      -                          "partial"
      -                        ],
      -                        "type": "string"
      -                      },
      -                      "currency": {
      -                        "pattern": "^[A-Z]{3}$",
      -                        "type": "string"
      -                      },
      -                      "taxesIncluded": {
      -                        "anyOf": [
      -                          {
      -                            "type": "boolean"
      -                          },
      -                          {
      -                            "type": "null"
      -                          }
      -                        ]
      -                      },
      -                      "total": {
      -                        "minimum": 0,
      -                        "type": "number"
      -                      }
      -                    },
      -                    "required": [
      -                      "currency",
      -                      "total",
      -                      "breakdown",
      -                      "completeness",
      -                      "taxesIncluded"
      -                    ],
      -                    "type": "object"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "propertyId": {
      -                "type": "string"
      -              },
      -              "reason": {
      -                "enum": [
      -                  "checked",
      -                  "blocked_dates",
      -                  "minimum_stay",
      -                  "maximum_stay",
      -                  "arrival_departure_rules",
      -                  "advance_notice",
      -                  "capacity",
      -                  "unsupported_host",
      -                  "browser_unconfigured",
      -                  "upstream_unavailable",
      -                  "date_range_unknown"
      -                ],
      -                "type": "string"
      -              },
      -              "sourceUrl": {
      -                "format": "uri",
      -                "type": "string"
      -              },
      -              "startingNightlyPrice": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "amount": {
      -                    "minimum": 0,
      -                    "type": "number"
      -                  },
      -                  "currency": {
      -                    "pattern": "^[A-Z]{3}$",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "currency",
      -                  "amount"
      -                ],
      -                "type": "object"
      -              }
      -            },
      -            "required": [
      -              "propertyId",
      -              "arrival",
      -              "departure",
      -              "guests",
      -              "nights",
      -              "availability",
      -              "reason",
      -              "minimumNights",
      -              "price",
      -              "checkedAt",
      -              "expiresAt",
      -              "sourceUrl",
      -              "bookingUrl",
      -              "held"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "request": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "arrival": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "currency": {
      -            "enum": [
      -              "USD",
      -              "EUR",
      -              "GBP",
      -              "CRC",
      -              "MXN",
      -              "COP",
      -              "PEN",
      -              "BRL"
      -            ],
      -            "type": "string"
      -          },
      -          "departure": {
      -            "format": "date",
      -            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      -            "type": "string"
      -          },
      -          "execution": {
      -            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      -            "enum": [
      -              "auto",
      -              "browser"
      -            ],
      -            "type": "string"
      -          },
      -          "guests": {
      -            "maximum": 200,
      -            "minimum": 1,
      -            "type": "integer"
      -          },
      -          "id": {
      -            "maxLength": 160,
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "id",
      -          "arrival",
      -          "departure",
      -          "guests"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "enum": [
      -          "ready",
      -          "pending",
      -          "not_checked",
      -          "limited"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "basis",
      -      "status",
      -      "request",
      -      "quote",
      -      "estimate"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "basis": {
      +        "const": "exact",
      +        "type": "string"
      +      },
      +      "quote": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "arrival": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "availability": {
      +                "enum": [
      +                  "available",
      +                  "unavailable",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "bookingUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "checkedAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "departure": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "expiresAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "guests": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "held": {
      +                "const": false,
      +                "type": "boolean"
      +              },
      +              "minimumNights": {
      +                "anyOf": [
      +                  {
      +                    "exclusiveMinimum": 0,
      +                    "maximum": 9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "nights": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "partyBasis": {
      +                "const": "all_adults",
      +                "type": "string"
      +              },
      +              "price": {
      +                "anyOf": [
      +                  {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "breakdown": {
      +                        "items": {
      +                          "additionalProperties": false,
      +                          "properties": {
      +                            "amount": {
      +                              "type": "number"
      +                            },
      +                            "label": {
      +                              "maxLength": 160,
      +                              "minLength": 1,
      +                              "type": "string"
      +                            }
      +                          },
      +                          "required": [
      +                            "label",
      +                            "amount"
      +                          ],
      +                          "type": "object"
      +                        },
      +                        "maxItems": 30,
      +                        "type": "array"
      +                      },
      +                      "completeness": {
      +                        "enum": [
      +                          "total",
      +                          "partial"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "currency": {
      +                        "pattern": "^[A-Z]{3}$",
      +                        "type": "string"
      +                      },
      +                      "taxesIncluded": {
      +                        "anyOf": [
      +                          {
      +                            "type": "boolean"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "total": {
      +                        "minimum": 0,
      +                        "type": "number"
      +                      }
      +                    },
      +                    "required": [
      +                      "currency",
      +                      "total",
      +                      "breakdown",
      +                      "completeness",
      +                      "taxesIncluded"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "propertyId": {
      +                "type": "string"
      +              },
      +              "reason": {
      +                "enum": [
      +                  "checked",
      +                  "blocked_dates",
      +                  "minimum_stay",
      +                  "maximum_stay",
      +                  "arrival_departure_rules",
      +                  "advance_notice",
      +                  "capacity",
      +                  "unsupported_host",
      +                  "browser_unconfigured",
      +                  "upstream_unavailable",
      +                  "date_range_unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "sourceUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "startingNightlyPrice": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "amount": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "currency": {
      +                    "pattern": "^[A-Z]{3}$",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "currency",
      +                  "amount"
      +                ],
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "propertyId",
      +              "arrival",
      +              "departure",
      +              "guests",
      +              "nights",
      +              "availability",
      +              "reason",
      +              "minimumNights",
      +              "price",
      +              "checkedAt",
      +              "expiresAt",
      +              "sourceUrl",
      +              "bookingUrl",
      +              "held"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "request": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "arrival": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "currency": {
      +            "enum": [
      +              "USD",
      +              "EUR",
      +              "GBP",
      +              "CRC",
      +              "MXN",
      +              "COP",
      +              "PEN",
      +              "BRL"
      +            ],
      +            "type": "string"
      +          },
      +          "departure": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "execution": {
      +            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      +            "enum": [
      +              "auto",
      +              "browser"
      +            ],
      +            "type": "string"
      +          },
      +          "guests": {
      +            "maximum": 200,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "id": {
      +            "maxLength": 160,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "arrival",
      +          "departure",
      +          "guests"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "enum": [
      +          "ready",
      +          "pending",
      +          "not_checked",
      +          "limited"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "basis",
      +      "status",
      +      "request",
      +      "quote"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "basis": {
      +        "const": "sample",
      +        "type": "string"
      +      },
      +      "diagnostics": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "attemptedStays": {
      +            "maximum": 4,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "reason": {
      +            "description": "Last sampled observation when no dated total was selected. Applies only to attempted stays; blocked samples never establish that the whole window is sold out. Terminal unsupported_host/upstream_unavailable evidence should be explained, not retried unchanged.",
      +            "enum": [
      +              "checked",
      +              "blocked_dates",
      +              "minimum_stay",
      +              "maximum_stay",
      +              "arrival_departure_rules",
      +              "advance_notice",
      +              "capacity",
      +              "unsupported_host",
      +              "browser_unconfigured",
      +              "upstream_unavailable",
      +              "date_range_unknown"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "attemptedStays"
      +        ],
      +        "type": "object"
      +      },
      +      "estimate": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "currency": {
      +            "enum": [
      +              "USD",
      +              "EUR",
      +              "GBP",
      +              "CRC",
      +              "MXN",
      +              "COP",
      +              "PEN",
      +              "BRL"
      +            ],
      +            "type": "string"
      +          },
      +          "guests": {
      +            "maximum": 200,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "id": {
      +            "maxLength": 160,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "nights": {
      +            "maximum": 30,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "windowEnd": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "windowStart": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "windowStart",
      +          "windowEnd",
      +          "nights",
      +          "guests"
      +        ],
      +        "type": "object"
      +      },
      +      "quote": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "arrival": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "availability": {
      +                "enum": [
      +                  "available",
      +                  "unavailable",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "bookingUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "checkedAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "departure": {
      +                "format": "date",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                "type": "string"
      +              },
      +              "expiresAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                "type": "string"
      +              },
      +              "guests": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "held": {
      +                "const": false,
      +                "type": "boolean"
      +              },
      +              "minimumNights": {
      +                "anyOf": [
      +                  {
      +                    "exclusiveMinimum": 0,
      +                    "maximum": 9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "nights": {
      +                "maximum": 9007199254740991,
      +                "minimum": -9007199254740991,
      +                "type": "integer"
      +              },
      +              "partyBasis": {
      +                "const": "all_adults",
      +                "type": "string"
      +              },
      +              "price": {
      +                "anyOf": [
      +                  {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "breakdown": {
      +                        "items": {
      +                          "additionalProperties": false,
      +                          "properties": {
      +                            "amount": {
      +                              "type": "number"
      +                            },
      +                            "label": {
      +                              "maxLength": 160,
      +                              "minLength": 1,
      +                              "type": "string"
      +                            }
      +                          },
      +                          "required": [
      +                            "label",
      +                            "amount"
      +                          ],
      +                          "type": "object"
      +                        },
      +                        "maxItems": 30,
      +                        "type": "array"
      +                      },
      +                      "completeness": {
      +                        "enum": [
      +                          "total",
      +                          "partial"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "currency": {
      +                        "pattern": "^[A-Z]{3}$",
      +                        "type": "string"
      +                      },
      +                      "taxesIncluded": {
      +                        "anyOf": [
      +                          {
      +                            "type": "boolean"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "total": {
      +                        "minimum": 0,
      +                        "type": "number"
      +                      }
      +                    },
      +                    "required": [
      +                      "currency",
      +                      "total",
      +                      "breakdown",
      +                      "completeness",
      +                      "taxesIncluded"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "propertyId": {
      +                "type": "string"
      +              },
      +              "reason": {
      +                "enum": [
      +                  "checked",
      +                  "blocked_dates",
      +                  "minimum_stay",
      +                  "maximum_stay",
      +                  "arrival_departure_rules",
      +                  "advance_notice",
      +                  "capacity",
      +                  "unsupported_host",
      +                  "browser_unconfigured",
      +                  "upstream_unavailable",
      +                  "date_range_unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "sourceUrl": {
      +                "format": "uri",
      +                "type": "string"
      +              },
      +              "startingNightlyPrice": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "amount": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "currency": {
      +                    "pattern": "^[A-Z]{3}$",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "currency",
      +                  "amount"
      +                ],
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "propertyId",
      +              "arrival",
      +              "departure",
      +              "guests",
      +              "nights",
      +              "availability",
      +              "reason",
      +              "minimumNights",
      +              "price",
      +              "checkedAt",
      +              "expiresAt",
      +              "sourceUrl",
      +              "bookingUrl",
      +              "held"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "request": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "arrival": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "currency": {
      +            "enum": [
      +              "USD",
      +              "EUR",
      +              "GBP",
      +              "CRC",
      +              "MXN",
      +              "COP",
      +              "PEN",
      +              "BRL"
      +            ],
      +            "type": "string"
      +          },
      +          "departure": {
      +            "format": "date",
      +            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +            "type": "string"
      +          },
      +          "execution": {
      +            "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      +            "enum": [
      +              "auto",
      +              "browser"
      +            ],
      +            "type": "string"
      +          },
      +          "guests": {
      +            "maximum": 200,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "id": {
      +            "maxLength": 160,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "arrival",
      +          "departure",
      +          "guests"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "enum": [
      +          "ready",
      +          "pending",
      +          "not_checked",
      +          "limited"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "basis",
      +      "status",
      +      "request",
      +      "quote",
      +      "estimate"
      +    ],
      +    "type": "object"
      +  }
      +]
  5. Changed1 schema field changed
    • addedOutput schema / properties / properties / items / properties / stayQuote
      Added value: +{
      +  "oneOf": [
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "basis": {
      +          "const": "exact",
      +          "type": "string"
      +        },
      +        "quote": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "arrival": {
      +                  "format": "date",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                  "type": "string"
      +                },
      +                "availability": {
      +                  "enum": [
      +                    "available",
      +                    "unavailable",
      +                    "unknown"
      +                  ],
      +                  "type": "string"
      +                },
      +                "bookingUrl": {
      +                  "format": "uri",
      +                  "type": "string"
      +                },
      +                "checkedAt": {
      +                  "format": "date-time",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                  "type": "string"
      +                },
      +                "departure": {
      +                  "format": "date",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                  "type": "string"
      +                },
      +                "expiresAt": {
      +                  "format": "date-time",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                  "type": "string"
      +                },
      +                "guests": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": -9007199254740991,
      +                  "type": "integer"
      +                },
      +                "held": {
      +                  "const": false,
      +                  "type": "boolean"
      +                },
      +                "minimumNights": {
      +                  "anyOf": [
      +                    {
      +                      "exclusiveMinimum": 0,
      +                      "maximum": 9007199254740991,
      +                      "type": "integer"
      +                    },
      +                    {
      +                      "type": "null"
      +                    }
      +                  ]
      +                },
      +                "nights": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": -9007199254740991,
      +                  "type": "integer"
      +                },
      +                "partyBasis": {
      +                  "const": "all_adults",
      +                  "type": "string"
      +                },
      +                "price": {
      +                  "anyOf": [
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "breakdown": {
      +                          "items": {
      +                            "additionalProperties": false,
      +                            "properties": {
      +                              "amount": {
      +                                "type": "number"
      +                              },
      +                              "label": {
      +                                "maxLength": 160,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              }
      +                            },
      +                            "required": [
      +                              "label",
      +                              "amount"
      +                            ],
      +                            "type": "object"
      +                          },
      +                          "maxItems": 30,
      +                          "type": "array"
      +                        },
      +                        "completeness": {
      +                          "enum": [
      +                            "total",
      +                            "partial"
      +                          ],
      +                          "type": "string"
      +                        },
      +                        "currency": {
      +                          "pattern": "^[A-Z]{3}$",
      +                          "type": "string"
      +                        },
      +                        "taxesIncluded": {
      +                          "anyOf": [
      +                            {
      +                              "type": "boolean"
      +                            },
      +                            {
      +                              "type": "null"
      +                            }
      +                          ]
      +                        },
      +                        "total": {
      +                          "minimum": 0,
      +                          "type": "number"
      +                        }
      +                      },
      +                      "required": [
      +                        "currency",
      +                        "total",
      +                        "breakdown",
      +                        "completeness",
      +                        "taxesIncluded"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    {
      +                      "type": "null"
      +                    }
      +                  ]
      +                },
      +                "propertyId": {
      +                  "type": "string"
      +                },
      +                "reason": {
      +                  "enum": [
      +                    "checked",
      +                    "blocked_dates",
      +                    "minimum_stay",
      +                    "maximum_stay",
      +                    "arrival_departure_rules",
      +                    "advance_notice",
      +                    "capacity",
      +                    "unsupported_host",
      +                    "browser_unconfigured",
      +                    "upstream_unavailable",
      +                    "date_range_unknown"
      +                  ],
      +                  "type": "string"
      +                },
      +                "sourceUrl": {
      +                  "format": "uri",
      +                  "type": "string"
      +                },
      +                "startingNightlyPrice": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "amount": {
      +                      "minimum": 0,
      +                      "type": "number"
      +                    },
      +                    "currency": {
      +                      "pattern": "^[A-Z]{3}$",
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "currency",
      +                    "amount"
      +                  ],
      +                  "type": "object"
      +                }
      +              },
      +              "required": [
      +                "propertyId",
      +                "arrival",
      +                "departure",
      +                "guests",
      +                "nights",
      +                "availability",
      +                "reason",
      +                "minimumNights",
      +                "price",
      +                "checkedAt",
      +                "expiresAt",
      +                "sourceUrl",
      +                "bookingUrl",
      +                "held"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "request": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "arrival": {
      +              "format": "date",
      +              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +              "type": "string"
      +            },
      +            "currency": {
      +              "enum": [
      +                "USD",
      +                "EUR",
      +                "GBP",
      +                "CRC",
      +                "MXN",
      +                "COP",
      +                "PEN",
      +                "BRL"
      +              ],
      +              "type": "string"
      +            },
      +            "departure": {
      +              "format": "date",
      +              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +              "type": "string"
      +            },
      +            "execution": {
      +              "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      +              "enum": [
      +                "auto",
      +                "browser"
      +              ],
      +              "type": "string"
      +            },
      +            "guests": {
      +              "maximum": 200,
      +              "minimum": 1,
      +              "type": "integer"
      +            },
      +            "id": {
      +              "maxLength": 160,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "arrival",
      +            "departure",
      +            "guests"
      +          ],
      +          "type": "object"
      +        },
      +        "status": {
      +          "enum": [
      +            "ready",
      +            "pending",
      +            "not_checked",
      +            "limited"
      +          ],
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "basis",
      +        "status",
      +        "request",
      +        "quote"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "basis": {
      +          "const": "sample",
      +          "type": "string"
      +        },
      +        "estimate": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "currency": {
      +              "enum": [
      +                "USD",
      +                "EUR",
      +                "GBP",
      +                "CRC",
      +                "MXN",
      +                "COP",
      +                "PEN",
      +                "BRL"
      +              ],
      +              "type": "string"
      +            },
      +            "guests": {
      +              "maximum": 200,
      +              "minimum": 1,
      +              "type": "integer"
      +            },
      +            "id": {
      +              "maxLength": 160,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "nights": {
      +              "maximum": 30,
      +              "minimum": 1,
      +              "type": "integer"
      +            },
      +            "windowEnd": {
      +              "format": "date",
      +              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +              "type": "string"
      +            },
      +            "windowStart": {
      +              "format": "date",
      +              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "windowStart",
      +            "windowEnd",
      +            "nights",
      +            "guests"
      +          ],
      +          "type": "object"
      +        },
      +        "quote": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": false,
      +              "properties": {
      +                "arrival": {
      +                  "format": "date",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                  "type": "string"
      +                },
      +                "availability": {
      +                  "enum": [
      +                    "available",
      +                    "unavailable",
      +                    "unknown"
      +                  ],
      +                  "type": "string"
      +                },
      +                "bookingUrl": {
      +                  "format": "uri",
      +                  "type": "string"
      +                },
      +                "checkedAt": {
      +                  "format": "date-time",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                  "type": "string"
      +                },
      +                "departure": {
      +                  "format": "date",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +                  "type": "string"
      +                },
      +                "expiresAt": {
      +                  "format": "date-time",
      +                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
      +                  "type": "string"
      +                },
      +                "guests": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": -9007199254740991,
      +                  "type": "integer"
      +                },
      +                "held": {
      +                  "const": false,
      +                  "type": "boolean"
      +                },
      +                "minimumNights": {
      +                  "anyOf": [
      +                    {
      +                      "exclusiveMinimum": 0,
      +                      "maximum": 9007199254740991,
      +                      "type": "integer"
      +                    },
      +                    {
      +                      "type": "null"
      +                    }
      +                  ]
      +                },
      +                "nights": {
      +                  "maximum": 9007199254740991,
      +                  "minimum": -9007199254740991,
      +                  "type": "integer"
      +                },
      +                "partyBasis": {
      +                  "const": "all_adults",
      +                  "type": "string"
      +                },
      +                "price": {
      +                  "anyOf": [
      +                    {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "breakdown": {
      +                          "items": {
      +                            "additionalProperties": false,
      +                            "properties": {
      +                              "amount": {
      +                                "type": "number"
      +                              },
      +                              "label": {
      +                                "maxLength": 160,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              }
      +                            },
      +                            "required": [
      +                              "label",
      +                              "amount"
      +                            ],
      +                            "type": "object"
      +                          },
      +                          "maxItems": 30,
      +                          "type": "array"
      +                        },
      +                        "completeness": {
      +                          "enum": [
      +                            "total",
      +                            "partial"
      +                          ],
      +                          "type": "string"
      +                        },
      +                        "currency": {
      +                          "pattern": "^[A-Z]{3}$",
      +                          "type": "string"
      +                        },
      +                        "taxesIncluded": {
      +                          "anyOf": [
      +                            {
      +                              "type": "boolean"
      +                            },
      +                            {
      +                              "type": "null"
      +                            }
      +                          ]
      +                        },
      +                        "total": {
      +                          "minimum": 0,
      +                          "type": "number"
      +                        }
      +                      },
      +                      "required": [
      +                        "currency",
      +                        "total",
      +                        "breakdown",
      +                        "completeness",
      +                        "taxesIncluded"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    {
      +                      "type": "null"
      +                    }
      +                  ]
      +                },
      +                "propertyId": {
      +                  "type": "string"
      +                },
      +                "reason": {
      +                  "enum": [
      +                    "checked",
      +                    "blocked_dates",
      +                    "minimum_stay",
      +                    "maximum_stay",
      +                    "arrival_departure_rules",
      +                    "advance_notice",
      +                    "capacity",
      +                    "unsupported_host",
      +                    "browser_unconfigured",
      +                    "upstream_unavailable",
      +                    "date_range_unknown"
      +                  ],
      +                  "type": "string"
      +                },
      +                "sourceUrl": {
      +                  "format": "uri",
      +                  "type": "string"
      +                },
      +                "startingNightlyPrice": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "amount": {
      +                      "minimum": 0,
      +                      "type": "number"
      +                    },
      +                    "currency": {
      +                      "pattern": "^[A-Z]{3}$",
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "currency",
      +                    "amount"
      +                  ],
      +                  "type": "object"
      +                }
      +              },
      +              "required": [
      +                "propertyId",
      +                "arrival",
      +                "departure",
      +                "guests",
      +                "nights",
      +                "availability",
      +                "reason",
      +                "minimumNights",
      +                "price",
      +                "checkedAt",
      +                "expiresAt",
      +                "sourceUrl",
      +                "bookingUrl",
      +                "held"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "request": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "arrival": {
      +              "format": "date",
      +              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +              "type": "string"
      +            },
      +            "currency": {
      +              "enum": [
      +                "USD",
      +                "EUR",
      +                "GBP",
      +                "CRC",
      +                "MXN",
      +                "COP",
      +                "PEN",
      +                "BRL"
      +              ],
      +              "type": "string"
      +            },
      +            "departure": {
      +              "format": "date",
      +              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
      +              "type": "string"
      +            },
      +            "execution": {
      +              "description": "Selected-home execution only. Default auto prefers the fast supported reader. browser requests the slower experimental quote-only agent on reviewed Stays sites; unsupported sites return unknown. Search never starts this agent.",
      +              "enum": [
      +                "auto",
      +                "browser"
      +              ],
      +              "type": "string"
      +            },
      +            "guests": {
      +              "maximum": 200,
      +              "minimum": 1,
      +              "type": "integer"
      +            },
      +            "id": {
      +              "maxLength": 160,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "arrival",
      +            "departure",
      +            "guests"
      +          ],
      +          "type": "object"
      +        },
      +        "status": {
      +          "enum": [
      +            "ready",
      +            "pending",
      +            "not_checked",
      +            "limited"
      +          ],
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "basis",
      +        "status",
      +        "request",
      +        "quote",
      +        "estimate"
      +      ],
      +      "type": "object"
      +    }
      +  ]
      +}
  6. Changed1 schema field changed
    • addedOutput schema / properties / properties / items / properties / enquiryUrl
      Added value: +{
      +  "type": "string"
      +}
  7. Changed3 schema fields changed
    • addedOutput schema / properties / properties / items / properties / organization
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "canonicalUrl": {
      +          "type": "string"
      +        },
      +        "name": {
      +          "type": "string"
      +        },
      +        "slug": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "name",
      +        "slug",
      +        "canonicalUrl"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ]
      +}
    • addedOutput schema / properties / properties / items / properties / relatedPropertiesUrl
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / properties / properties / items / required
      Previous value: -[
      -  "id",
      -  "name",
      -  "place",
      -  "amenities",
      -  "canonicalUrl"
      -]New value: +[
      +  "organization",
      +  "relatedPropertiesUrl",
      +  "id",
      +  "name",
      +  "place",
      +  "amenities",
      +  "canonicalUrl"
      +]
  8. Changed5 schema fields changed
    • addedOutput schema / properties / properties / items / properties / amenities
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / properties / items / properties / canonicalUrl
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / properties / items / properties / constraint
      Added value: +{
      +  "maxLength": 160,
      +  "type": "string"
      +}
    • addedOutput schema / properties / properties / items / properties / summary
      Added value: +{
      +  "maxLength": 240,
      +  "type": "string"
      +}
    • changedOutput schema / properties / properties / items / required
      Previous value: -[
      -  "id",
      -  "name",
      -  "place"
      -]New value: +[
      +  "id",
      +  "name",
      +  "place",
      +  "amenities",
      +  "canonicalUrl"
      +]
  9. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/idempotent annotations, the description discloses the important behaviors: it rechecks publication, shows Details and host booking links, and never fetches quotes or prices. The warning that rendered cards stay price-free even when searchContext carries dates and quoteMode prevents a real misrepresentation, and it does not contradict 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The invocation-relevant content is front-loaded and useful, but roughly half the text is response-style policy (sentence counts, word limits, do-not-narrate rules) that inflates a three-parameter tool's definition. Some of it repeats itself, e.g., 'do not narrate tools called' and 'keep operational checks internal.'

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and annotations covering the safety profile, the description fills the remaining gaps: when to call, how to pass context, what is not fetched, and how not to imply prices. Nothing an agent needs in order to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 33% at the top level, so the description carries real weight. It adds genuine meaning for searchContext (preserve explorer refinements of destination, party and filters; omit when unrelated) and implies the 1–6 count for ids, but says nothing about the locale parameter or whether ids must be distinct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb plus resource and scope: 'Re-show one to six selected homes.' It explicitly distinguishes itself from the sibling search_properties, stating that search already displays cards and a redundant render should be avoided, so an agent can route correctly 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.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It names the triggering conditions (traveler asks for a subset, photos again, or a comparison of already-found homes) and the anti-condition (do not re-render after a search). It also gives conditional rules for searchContext: pass original arguments when re-showing a selected subset, omit for unrelated saved homes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources