removedInput schema / properties / availability / type
Removed value: -"string"
removedInput schema / properties / comparison / type
Removed value: -"string"
removedInput schema / properties / sort / type
Removed value: -"string"
removedOutput schema / $defs / GroceryOffer / properties / availability / type
Removed value: -"string"
removedOutput schema / $defs / GroceryOffer / properties / comparison / type
Removed value: -"string"
removedOutput schema / $defs / GroceryOffer / properties / freshness / type
Removed value: -"string"
removedOutput schema / $defs / GroceryOffer / properties / sale_mode / type
Removed value: -"string"
removedOutput schema / $defs / GroceryOffer / properties / unit / type
Removed value: -"string"
removedOutput schema / $defs / GroceryOfferListResponse
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "data": {
- "items": {
- "$ref": "#/$defs/GroceryOffer"
- },
- "type": "array"
- },
- "links": {
- "$ref": "#/$defs/Links"
- },
- "meta": {
- "$ref": "#/$defs/ResponseMeta"
- }
- },
- "required": [
- "meta",
- "data",
- "links"
- ],
- "type": "object"
-}
removedOutput schema / $defs / GroceryProduct
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "comparison": {
- "enum": [
- "exact",
- "equivalent"
- ],
- "type": "string"
- },
- "default_quantity": {
- "type": [
- "number",
- "null"
- ]
- },
- "lowest_price_aed": {
- "type": [
- "number",
- "null"
- ]
- },
- "name": {
- "type": "string"
- },
- "offers": {
- "items": {
- "$ref": "#/$defs/GroceryOffer"
- },
- "type": "array"
- },
- "offers_count": {
- "type": "integer"
- },
- "open_in_browser": {
- "type": "string"
- },
- "page_url": {
- "type": [
- "string",
- "null"
- ]
- },
- "product_id": {
- "type": "string"
- },
- "provenance": {
- "$ref": "#/$defs/Provenance"
- },
- "unit": {
- "enum": [
- "each",
- "kg",
- "l"
- ],
- "type": "string"
- }
- },
- "required": [
- "product_id",
- "name",
- "comparison",
- "unit",
- "default_quantity",
- "offers_count",
- "lowest_price_aed",
- "page_url",
- "open_in_browser",
- "provenance"
- ],
- "type": "object"
-}
removedOutput schema / $defs / GroceryProductDetail
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "comparison": {
- "enum": [
- "exact",
- "equivalent"
- ],
- "type": "string"
- },
- "default_quantity": {
- "type": [
- "number",
- "null"
- ]
- },
- "name": {
- "type": "string"
- },
- "offers": {
- "items": {
- "$ref": "#/$defs/GroceryOffer"
- },
- "type": "array"
- },
- "open_in_browser": {
- "type": "string"
- },
- "page_url": {
- "type": [
- "string",
- "null"
- ]
- },
- "price_history": {
- "additionalProperties": false,
- "properties": {
- "note": {
- "type": "string"
- },
- "points": {
- "items": {
- "$ref": "#/$defs/PriceHistoryPoint"
- },
- "type": "array"
- },
- "status": {
- "enum": [
- "available",
- "not_published"
- ],
- "type": "string"
- }
- },
- "required": [
- "status",
- "note",
- "points"
- ],
- "type": "object"
- },
- "product_id": {
- "type": "string"
- },
- "provenance": {
- "$ref": "#/$defs/Provenance"
- },
- "unit": {
- "enum": [
- "each",
- "kg",
- "l"
- ],
- "type": "string"
- }
- },
- "required": [
- "product_id",
- "name",
- "comparison",
- "unit",
- "default_quantity",
- "page_url",
- "open_in_browser",
- "offers",
- "price_history",
- "provenance"
- ],
- "type": "object"
-}
removedOutput schema / $defs / GroceryProductListResponse
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "data": {
- "items": {
- "$ref": "#/$defs/GroceryProduct"
- },
- "type": "array"
- },
- "links": {
- "$ref": "#/$defs/Links"
- },
- "meta": {
- "$ref": "#/$defs/ResponseMeta"
- }
- },
- "required": [
- "meta",
- "data",
- "links"
- ],
- "type": "object"
-}
removedOutput schema / $defs / GroceryProductResponse
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "data": {
- "anyOf": [
- {
- "$ref": "#/$defs/GroceryProductDetail"
- },
- {
- "type": "null"
- }
- ]
- },
- "links": {
- "$ref": "#/$defs/Links"
- },
- "meta": {
- "$ref": "#/$defs/ResponseMeta"
- }
- },
- "required": [
- "meta",
- "data",
- "links"
- ],
- "type": "object"
-}
addedOutput schema / $defs / PriceEstimate
Added value: +{
+ "additionalProperties": false,
+ "properties": {
+ "as_of": {
+ "type": "string"
+ },
+ "basis": {
+ "additionalProperties": true,
+ "type": "object"
+ },
+ "confidence": {
+ "enum": [
+ "high",
+ "medium",
+ "low"
+ ]
+ },
+ "kind": {
+ "const": "estimate"
+ },
+ "label": {
+ "const": "Estimate — not a store price"
+ },
+ "method": {
+ "enum": [
+ "official_same_product",
+ "own_last_observed",
+ "official_category",
+ "category_median",
+ "shopper_reports"
+ ]
+ },
+ "packs": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "range_aed": {
+ "additionalProperties": false,
+ "properties": {
+ "high_aed": {
+ "type": "number"
+ },
+ "low_aed": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "unit": {
+ "enum": [
+ "kg",
+ "l",
+ "each"
+ ]
+ },
+ "unit_value_aed": {
+ "type": "number"
+ },
+ "value_aed": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+}
removedOutput schema / $defs / PriceHistoryPoint
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "date": {
- "type": "string"
- },
- "price_aed": {
- "type": "number"
- },
- "store_id": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ]
- }
- },
- "required": [
- "date",
- "price_aed",
- "store_id"
- ],
- "type": "object"
-}
removedOutput schema / $defs / ToolFailure
Removed value: -{
- "additionalProperties": false,
- "properties": {
- "error": {
- "additionalProperties": false,
- "properties": {
- "code": {
- "type": "string"
- },
- "message": {
- "type": "string"
- },
- "retry_after_s": {
- "type": [
- "integer",
- "null"
- ]
- },
- "retryable": {
- "type": "boolean"
- }
- },
- "required": [
- "code",
- "message",
- "retryable",
- "retry_after_s"
- ],
- "type": "object"
- },
- "request_id": {
- "type": [
- "string",
- "null"
- ]
- }
- },
- "required": [
- "error",
- "request_id"
- ],
- "type": "object"
-}
changedOutput schema / anyOf
Previous value: -[
- {
- "$ref": "#/$defs/GroceryProductListResponse"
- },
- {
- "$ref": "#/$defs/GroceryProductResponse"
- },
- {
- "$ref": "#/$defs/GroceryOfferListResponse"
- },
- {
- "$ref": "#/$defs/ToolFailure"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "comparison": {
+ "enum": [
+ "exact",
+ "equivalent"
+ ]
+ },
+ "default_quantity": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "estimate": {
+ "$ref": "#/$defs/PriceEstimate"
+ },
+ "lowest_price_aed": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "name": {
+ "type": "string"
+ },
+ "offers": {
+ "items": {
+ "$ref": "#/$defs/GroceryOffer"
+ },
+ "type": "array"
+ },
+ "offers_count": {
+ "type": "integer"
+ },
+ "open_in_browser": {
+ "type": "string"
+ },
+ "page_url": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "price": {
+ "type": "null"
+ },
+ "product_id": {
+ "type": "string"
+ },
+ "provenance": {
+ "$ref": "#/$defs/Provenance"
+ },
+ "unit": {
+ "enum": [
+ "each",
+ "kg",
+ "l"
+ ]
+ }
+ },
+ "required": [
+ "product_id",
+ "name",
+ "comparison",
+ "unit",
+ "default_quantity",
+ "offers_count",
+ "lowest_price_aed",
+ "page_url",
+ "open_in_browser",
+ "provenance"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "links": {
+ "$ref": "#/$defs/Links"
+ },
+ "meta": {
+ "$ref": "#/$defs/ResponseMeta"
+ }
+ },
+ "required": [
+ "meta",
+ "data",
+ "links"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "anyOf": [
+ {
+ "additionalProperties": false,
+ "properties": {
+ "comparison": {
+ "enum": [
+ "exact",
+ "equivalent"
+ ]
+ },
+ "default_quantity": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "estimate": {
+ "$ref": "#/$defs/PriceEstimate"
+ },
+ "name": {
+ "type": "string"
+ },
+ "offers": {
+ "items": {
+ "$ref": "#/$defs/GroceryOffer"
+ },
+ "type": "array"
+ },
+ "open_in_browser": {
+ "type": "string"
+ },
+ "page_url": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "price": {
+ "type": "null"
+ },
+ "price_history": {
+ "additionalProperties": false,
+ "properties": {
+ "note": {
+ "type": "string"
+ },
+ "points": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "date": {
+ "type": "string"
+ },
+ "price_aed": {
+ "type": "number"
+ },
+ "store_id": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ }
+ },
+ "required": [
+ "date",
+ "price_aed",
+ "store_id"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "status": {
+ "enum": [
+ "available",
+ "not_published"
+ ]
+ }
+ },
+ "required": [
+ "status",
+ "note",
+ "points"
+ ],
+ "type": "object"
+ },
+ "product_id": {
+ "type": "string"
+ },
+ "provenance": {
+ "$ref": "#/$defs/Provenance"
+ },
+ "unit": {
+ "enum": [
+ "each",
+ "kg",
+ "l"
+ ]
+ }
+ },
+ "required": [
+ "product_id",
+ "name",
+ "comparison",
+ "unit",
+ "default_quantity",
+ "page_url",
+ "open_in_browser",
+ "offers",
+ "price_history",
+ "provenance"
+ ],
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "links": {
+ "$ref": "#/$defs/Links"
+ },
+ "meta": {
+ "$ref": "#/$defs/ResponseMeta"
+ }
+ },
+ "required": [
+ "meta",
+ "data",
+ "links"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "items": {
+ "$ref": "#/$defs/GroceryOffer"
+ },
+ "type": "array"
+ },
+ "links": {
+ "$ref": "#/$defs/Links"
+ },
+ "meta": {
+ "$ref": "#/$defs/ResponseMeta"
+ }
+ },
+ "required": [
+ "meta",
+ "data",
+ "links"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "error": {
+ "additionalProperties": false,
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "retry_after_s": {
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "retryable": {
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "code",
+ "message",
+ "retryable",
+ "retry_after_s"
+ ],
+ "type": "object"
+ },
+ "request_id": {
+ "type": [
+ "string",
+ "null"
+ ]
+ }
+ },
+ "required": [
+ "error",
+ "request_id"
+ ],
+ "type": "object"
+ }
+]