Skip to main content
Glama

Read public property facts

get_property
Read-onlyIdempotent

Read a currently published property's approved facts and host booking link. Unpublished properties return 404 immediately. 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
idYes
localeNoen

Output Schema

NameRequiredDescriptionDefault
idYes
cityYes
nameYes
slugYes
factsYes
themeYes
photosYes
regionYes
countryYes
locationYes
revisionYes
offeringsYes
stayQuoteNo
updatedAtYes
bookingUrlYes
enquiryUrlNo
markdownUrlYes
canonicalUrlYes
organizationYes
relatedPropertiesUrlYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / 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"
      +  }
      +]
  2. Changed1 schema field changed
    • changedOutput schema / 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"
      +  }
      +]
  3. Changed1 schema field changed
    • addedOutput schema / 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"
      +    }
      +  ]
      +}
  4. Changed1 schema field changed
    • changedOutput schema / properties / facts / properties / photos / maxItems
      Previous value: -40New value: +120
  5. Changed1 schema field changed
    • addedOutput schema / properties / enquiryUrl
      Added value: +{
      +  "type": "string"
      +}
  6. Changed3 schema fields changed
    • addedOutput schema / 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 / relatedPropertiesUrl
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "id",
      -  "slug",
      -  "name",
      -  "city",
      -  "region",
      -  "country",
      -  "location",
      -  "facts",
      -  "photos",
      -  "offerings",
      -  "bookingUrl",
      -  "canonicalUrl",
      -  "markdownUrl",
      -  "updatedAt",
      -  "revision",
      -  "theme"
      -]New value: +[
      +  "organization",
      +  "relatedPropertiesUrl",
      +  "id",
      +  "slug",
      +  "name",
      +  "city",
      +  "region",
      +  "country",
      +  "location",
      +  "facts",
      +  "photos",
      +  "offerings",
      +  "bookingUrl",
      +  "canonicalUrl",
      +  "markdownUrl",
      +  "updatedAt",
      +  "revision",
      +  "theme"
      +]
  7. Changed2 schema fields changed
    • addedOutput schema / properties / location / properties / places / items / properties / urlPath
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / properties / location / properties / places / items / required
      Previous value: -[
      -  "key",
      -  "kind",
      -  "countryCode",
      -  "parentKey",
      -  "label",
      -  "labelEs",
      -  "fullLabel",
      -  "fullLabelEs",
      -  "center"
      -]New value: +[
      +  "key",
      +  "kind",
      +  "countryCode",
      +  "parentKey",
      +  "urlPath",
      +  "label",
      +  "labelEs",
      +  "fullLabel",
      +  "fullLabelEs",
      +  "center"
      +]
  8. First observed

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower, and the description still adds a real behavioral trait: unpublished properties return 404 immediately. It also discloses what the response contains (approved facts plus host booking link) and the uncertainty-disclosure policy.

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?

Purpose is correctly front-loaded in the first two sentences, but the remaining ~90 words are generic response-style instructions (word counts, what not to narrate) that are loosely related to invoking this specific tool and dilute the definition.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and annotations cover the safety profile. However, with zero parameter documentation and no explicit routing against the many sibling lookup/render tools, the definition is adequate but leaves real gaps.

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

Parameters2/5

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

Schema description coverage is 0% with two params (id, locale enum), so the description is expected to compensate but does not. It never explains the id's format/expected source or what changing locale actually affects in the returned facts.

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

Purpose4/5

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

States a specific verb and resource: 'Read a currently published property's approved facts and host booking link', which is concrete and actionable. It implies a single-property lookup versus the search_* siblings but never names or contrasts them explicitly, so the sibling differentiation required for a 5 is missing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

Usage is only implied (call with a property id to read its facts), and the one explicit exclusion is the 404 for unpublished properties. The bulk of the text governs how to present results, not when to choose this tool over search_properties, get_booking_link, or render_properties.

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