changedOutput schema / properties / products / items / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "properties": {
- "bonus_mechanism": {
- "type": "string"
- },
- "bonus_price": {
- "type": "number"
- },
- "brand": {
- "type": "string"
- },
- "category": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "id": {
- "type": "number"
- },
- "image_url": {
- "type": "string"
- },
- "is_available": {
- "type": "boolean"
- },
- "is_bonus": {
- "type": "boolean"
- },
- "nutri_score": {
- "type": "string"
- },
- "nutritional_info": {
- "items": {
- "additionalProperties": false,
- "properties": {
- "name": {
- "type": "string"
- },
- "type": {
- "type": "string"
- },
- "value": {
- "type": "string"
- }
- },
- "required": [
- "type",
- "name",
- "value"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "price": {
- "type": "number"
- },
- "property_icons": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "title": {
- "type": "string"
- },
- "unit_price_description": {
- "type": "string"
- },
- "unit_size": {
- "type": "string"
- },
- "url": {
- "type": "string"
- }
- },
- "required": [
- "id",
- "title",
- "url",
- "price",
- "is_bonus",
- "is_available"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "error": {
- "type": "string"
- },
- "id": {
- "type": "number"
- }
- },
- "required": [
- "id",
- "error"
- ],
- "type": "object"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "allergens": {
+ "description": "Only with include_ingredients: true, where AH has them: what the product contains or may contain",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "level": {
+ "enum": [
+ "contains",
+ "may_contain"
+ ],
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "name",
+ "level"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "bonus_mechanism": {
+ "type": "string"
+ },
+ "bonus_price": {
+ "description": "Price of one pack with the bonus, only where AH sends one: a percentage or euro discount, or a price for one pack ('VOOR 1.99'). Absent for deals on several packs ('2e gratis', '2 voor 5.00'): then deal_min_quantity packs cost deal_total, which is deal_price_per_pack a pack.",
+ "type": "number"
+ },
+ "brand": {
+ "type": "string"
+ },
+ "category": {
+ "type": "string"
+ },
+ "deal_min_quantity": {
+ "description": "Packs needed to get the deal (1 for a plain discount); null without a deal, or when the mechanism is not understood",
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "deal_price_per_pack": {
+ "description": "deal_total / deal_min_quantity, in euros",
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "deal_total": {
+ "description": "What you pay for deal_min_quantity packs with the deal, in euros",
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "description": {
+ "description": "Only with include_description: true",
+ "type": "string"
+ },
+ "id": {
+ "type": "number"
+ },
+ "image_url": {
+ "description": "Only with include_images: true",
+ "type": "string"
+ },
+ "ingredients": {
+ "description": "Only with include_ingredients: true, where AH has them",
+ "type": "string"
+ },
+ "is_available": {
+ "type": "boolean"
+ },
+ "is_bonus": {
+ "type": "boolean"
+ },
+ "nutri_score": {
+ "type": "string"
+ },
+ "nutritional_info": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "name",
+ "value"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "pack_price": {
+ "description": "Normal shelf price of one pack, in euros",
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "price": {
+ "description": "Normal price of one pack in euros, whatever the deal. Same as pack_price.",
+ "type": "number"
+ },
+ "property_icons": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "title": {
+ "type": "string"
+ },
+ "unit_price": {
+ "description": "Normal price per unit_price_unit, where AH gives one",
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "unit_price_description": {
+ "type": "string"
+ },
+ "unit_price_unit": {
+ "anyOf": [
+ {
+ "enum": [
+ "kg",
+ "l",
+ "stuk"
+ ],
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The unit of unit_price"
+ },
+ "unit_size": {
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "title",
+ "url",
+ "price",
+ "is_bonus",
+ "is_available",
+ "pack_price",
+ "deal_min_quantity",
+ "deal_total",
+ "deal_price_per_pack",
+ "unit_price",
+ "unit_price_unit"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "error": {
+ "type": "string"
+ },
+ "id": {
+ "type": "number"
+ }
+ },
+ "required": [
+ "id",
+ "error"
+ ],
+ "type": "object"
+ }
+]