changedOutput schema / properties / quote / anyOf
Previous value: -[
- {
- "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"
- },
- "roomSelection": {
- "additionalProperties": false,
- "properties": {
- "averageNightlyPrice": {
- "additionalProperties": false,
- "properties": {
- "amount": {
- "minimum": 0,
- "type": "number"
- },
- "currency": {
- "pattern": "^[A-Z]{3}$",
- "type": "string"
- }
- },
- "required": [
- "currency",
- "amount"
- ],
- "type": "object"
- },
- "name": {
- "maxLength": 200,
- "minLength": 1,
- "type": "string"
- },
- "ratePlan": {
- "maxLength": 200,
- "type": "string"
- },
- "rooms": {
- "const": 1,
- "type": "number"
- }
- },
- "required": [
- "name",
- "rooms"
- ],
- "type": "object"
- },
- "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"
- }
-]New value: +[
+ {
+ "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"
+ },
+ "roomSelection": {
+ "additionalProperties": false,
+ "properties": {
+ "averageNightlyPrice": {
+ "additionalProperties": false,
+ "properties": {
+ "amount": {
+ "minimum": 0,
+ "type": "number"
+ },
+ "currency": {
+ "pattern": "^[A-Z]{3}$",
+ "type": "string"
+ }
+ },
+ "required": [
+ "currency",
+ "amount"
+ ],
+ "type": "object"
+ },
+ "name": {
+ "maxLength": 200,
+ "minLength": 1,
+ "type": "string"
+ },
+ "ratePlan": {
+ "maxLength": 200,
+ "type": "string"
+ },
+ "rooms": {
+ "const": 1,
+ "type": "number"
+ }
+ },
+ "required": [
+ "name",
+ "rooms"
+ ],
+ "type": "object"
+ },
+ "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"
+ },
+ "terms": {
+ "additionalProperties": false,
+ "properties": {
+ "cancellation": {
+ "additionalProperties": false,
+ "properties": {
+ "freeUntil": {
+ "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"
+ },
+ "nonRefundable": {
+ "type": "boolean"
+ },
+ "policyText": {
+ "maxLength": 2000,
+ "minLength": 1,
+ "type": "string"
+ },
+ "refundWindows": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "from": {
+ "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"
+ },
+ "refundPercent": {
+ "maximum": 100,
+ "minimum": 0,
+ "type": "number"
+ },
+ "until": {
+ "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"
+ }
+ },
+ "required": [
+ "refundPercent"
+ ],
+ "type": "object"
+ },
+ "maxItems": 20,
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "payment": {
+ "additionalProperties": false,
+ "properties": {
+ "balanceDue": {
+ "additionalProperties": false,
+ "properties": {
+ "amount": {
+ "minimum": 0,
+ "type": "number"
+ },
+ "currency": {
+ "pattern": "^[A-Z]{3}$",
+ "type": "string"
+ }
+ },
+ "required": [
+ "amount",
+ "currency"
+ ],
+ "type": "object"
+ },
+ "balanceDueAt": {
+ "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"
+ },
+ "chargedBy": {
+ "enum": [
+ "host",
+ "booking_engine"
+ ],
+ "type": "string"
+ },
+ "depositAmount": {
+ "additionalProperties": false,
+ "properties": {
+ "amount": {
+ "minimum": 0,
+ "type": "number"
+ },
+ "currency": {
+ "pattern": "^[A-Z]{3}$",
+ "type": "string"
+ }
+ },
+ "required": [
+ "amount",
+ "currency"
+ ],
+ "type": "object"
+ },
+ "depositDueAt": {
+ "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"
+ },
+ "depositPercent": {
+ "maximum": 100,
+ "minimum": 0,
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "provenance": {
+ "additionalProperties": false,
+ "properties": {
+ "fetchedAt": {
+ "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"
+ },
+ "rawSourceField": {
+ "maxLength": 200,
+ "minLength": 1,
+ "type": "string"
+ },
+ "reader": {
+ "maxLength": 100,
+ "minLength": 1,
+ "type": "string"
+ }
+ },
+ "required": [
+ "reader",
+ "rawSourceField",
+ "fetchedAt"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "provenance"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "propertyId",
+ "arrival",
+ "departure",
+ "guests",
+ "nights",
+ "availability",
+ "reason",
+ "minimumNights",
+ "price",
+ "checkedAt",
+ "expiresAt",
+ "sourceUrl",
+ "bookingUrl",
+ "held"
+ ],
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+]