changedInput schema / properties / budget / description
Previous value: -"Daily budget: budget (hostels, street food), mid (3-star) or luxury. Defaults to mid."New value: +"Nightly hotel budget for the whole room, in euros: \"budget\" (under 60), \"mid\" (60 to 120), \"upper\" (120 to 250), \"luxury\" (250 and up), or the traveller's own range as \"min-max\", e.g. \"80-150\" (\"300-0\" = no upper limit). Convert other currencies to euros first. Defaults to mid."
removedInput schema / properties / budget / enum
Removed value: -[
- "budget",
- "mid",
- "luxury"
-]
addedInput schema / properties / budget / maxLength
Added value: +12
addedInput schema / properties / budget / pattern
Added value: +"^(budget|mid|upper|luxury|\\d{1,5}-\\d{1,5})$"
addedInput schema / properties / nights
Added value: +{
+ "description": "Trip length in nights for the dated links, the stay estimate and the trip total. Defaults to 7.",
+ "enum": [
+ 3,
+ 7,
+ 14
+ ],
+ "type": "integer"
+}
addedInput schema / properties / trip_budget
Added value: +{
+ "description": "Budget for the WHOLE trip in euros, everyone travelling, return flights and hotel together, as \"min-max\", e.g. \"1500-3000\" (\"4000-0\" = no upper limit). Preferred over budget: with an origin, each pick is costed with the cheapest recent round-trip fare found from there. Convert other currencies to euros first.",
+ "maxLength": 13,
+ "pattern": "^\\d{1,6}-\\d{1,6}$",
+ "type": "string"
+}
addedOutput schema / properties / picks / items / properties / bestMonths
Added value: +{
+ "description": "Months (1-12) the destination guide recommends.",
+ "items": {
+ "type": "integer"
+ },
+ "type": "array"
+}
addedOutput schema / properties / picks / items / properties / budgetFit
Added value: +{
+ "description": "in: a hotel level fits the budget; over: even the cheapest level costs more; under: the dearest level costs less.",
+ "type": [
+ "string",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / fareEUR
Added value: +{
+ "description": "Cheapest round-trip economy fare per person from the origin that Aviasales users found for the travel month in the last few days (Travelpayouts data API). Not a live quote; null when none was found or no origin was given.",
+ "type": [
+ "number",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / flightEstimate
Added value: +{
+ "description": "Nonstop flight time estimated from the great-circle distance, e.g. \"about 2 h 30\". Not a schedule.",
+ "type": [
+ "string",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / hotelLevel
Added value: +{
+ "description": "lo (budget hotel or guesthouse), mid (3 to good 4-star) or hi (4 to 5-star).",
+ "type": [
+ "string",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / hotelPerNightEUR
Added value: +{
+ "description": "Typical double-room price per night [min, max] in euros at the level closest to the budget, from the VoyageHacks guides and published averages; null when no figure is published. Not a live price.",
+ "items": {
+ "type": "number"
+ },
+ "type": [
+ "array",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / stayEstimateEUR
Added value: +{
+ "description": "hotelPerNightEUR x nights x rooms.",
+ "items": {
+ "type": "number"
+ },
+ "type": [
+ "array",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / tripBudgetFit
Added value: +{
+ "description": "in, over or under the trip_budget, from tripTotalEUR.",
+ "type": [
+ "string",
+ "null"
+ ]
+}
addedOutput schema / properties / picks / items / properties / tripTotalEUR
Added value: +{
+ "description": "fareEUR x travellers + stayEstimateEUR: the whole trip [min, max]; null when either part is unknown.",
+ "items": {
+ "type": "number"
+ },
+ "type": [
+ "array",
+ "null"
+ ]
+}