{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/yatmo/main/json-schema/yatmo-customer-item-summary-schema.json",
  "title": "CustomerItemSummary",
  "x-generated": "2026-10-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/yatmo-openapi.json#/components/schemas/CustomerItemSummary",
  "type": "object",
  "properties": {
    "AvailableCategoriesAroundPosition": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "$ref": "#/$defs/TopCategoryAroundPosition"
      }
    },
    "CloseCities": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "$ref": "#/$defs/MainCityForSummary"
      }
    },
    "PlaceInformation": {
      "allOf": [
        {
          "$ref": "#/$defs/PlaceInformation"
        }
      ],
      "nullable": true
    }
  },
  "additionalProperties": false,
  "$defs": {
    "Enum": {
      "type": "object",
      "additionalProperties": false
    },
    "GeoPosition": {
      "type": "object",
      "properties": {
        "Latitude": {
          "type": "number",
          "format": "double"
        },
        "Longitude": {
          "type": "number",
          "format": "double"
        }
      },
      "additionalProperties": false
    },
    "MainCityForSummary": {
      "type": "object",
      "properties": {
        "Names": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "EN": {
              "type": "string"
            },
            "FR": {
              "type": "string"
            },
            "NL": {
              "type": "string"
            },
            "DE": {
              "type": "string"
            },
            "IT": {
              "type": "string"
            },
            "PT": {
              "type": "string"
            },
            "ES": {
              "type": "string"
            },
            "CA": {
              "type": "string"
            },
            "ZH": {
              "type": "string"
            },
            "HI": {
              "type": "string"
            },
            "AR": {
              "type": "string"
            },
            "RU": {
              "type": "string"
            },
            "JA": {
              "type": "string"
            },
            "EL": {
              "type": "string"
            },
            "HR": {
              "type": "string"
            },
            "MT": {
              "type": "string"
            },
            "SL": {
              "type": "string"
            },
            "SR": {
              "type": "string"
            },
            "TR": {
              "type": "string"
            },
            "BS": {
              "type": "string"
            },
            "CNR": {
              "type": "string"
            },
            "SQ": {
              "type": "string"
            },
            "BG": {
              "type": "string"
            }
          }
        },
        "TravelDataElements": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "$ref": "#/$defs/SummaryTravelData"
          }
        },
        "Center": {
          "allOf": [
            {
              "$ref": "#/$defs/GeoPosition"
            }
          ],
          "nullable": true
        }
      },
      "additionalProperties": false
    },
    "PlaceInformation": {
      "type": "object",
      "properties": {
        "StreetName": {
          "type": [
            "string",
            "null"
          ]
        },
        "IsLocality": {
          "type": "boolean"
        },
        "CityName": {
          "type": [
            "string",
            "null"
          ]
        },
        "ZipCode": {
          "type": [
            "string",
            "null"
          ]
        },
        "LocalizedStreetNames": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": {
            "type": "string"
          }
        },
        "LocalizedCityNames": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "PointOfInterestTypes": {
      "enum": [
        "Children",
        "Transports",
        "Shopping",
        "Entertainment",
        "DailyLife",
        "Medical",
        "Tourism"
      ],
      "type": "string"
    },
    "SubCategoryAroundPosition": {
      "type": "object",
      "properties": {
        "PointOfInterestSubType": {
          "allOf": [
            {
              "$ref": "#/$defs/Enum"
            }
          ],
          "nullable": true
        },
        "SubType": {
          "type": "integer",
          "format": "int32"
        },
        "Label": {
          "type": [
            "string",
            "null"
          ]
        },
        "LabelBis": {
          "type": [
            "string",
            "null"
          ]
        },
        "Data": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "$ref": "#/$defs/SummaryData"
          }
        }
      },
      "additionalProperties": false
    },
    "SummaryData": {
      "type": "object",
      "properties": {
        "PoiTypeId": {
          "type": "integer",
          "format": "int64"
        },
        "Icon": {
          "type": "integer",
          "format": "int32"
        },
        "SubIcon": {
          "type": "integer",
          "format": "int32"
        },
        "Latitude": {
          "type": "number",
          "format": "double"
        },
        "Longitude": {
          "type": "number",
          "format": "double"
        },
        "Name": {
          "type": [
            "string",
            "null"
          ]
        },
        "SpecificData": {
          "type": [
            "string",
            "null"
          ]
        },
        "TravelDataElements": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "$ref": "#/$defs/SummaryTravelData"
          }
        }
      },
      "additionalProperties": false
    },
    "SummaryTravelData": {
      "type": "object",
      "properties": {
        "HasTravelInformation": {
          "type": "boolean"
        },
        "TravelMode": {
          "allOf": [
            {
              "$ref": "#/$defs/TravelModes"
            }
          ]
        },
        "TranslatedTravelMode": {
          "type": [
            "string",
            "null"
          ]
        },
        "PreciseTravelDistanceData": {
          "type": "integer",
          "format": "int32"
        },
        "PreciseTravelDistanceLongLabel": {
          "type": [
            "string",
            "null"
          ]
        },
        "PreciseTravelDistanceShortLabel": {
          "type": [
            "string",
            "null"
          ]
        },
        "TravelTime": {
          "type": "integer",
          "format": "int32"
        },
        "TravelTimeLongLabel": {
          "type": [
            "string",
            "null"
          ]
        },
        "TravelTimeShortLabel": {
          "type": [
            "string",
            "null"
          ]
        },
        "TravelTimeExtraShortLabel": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "additionalProperties": false
    },
    "TopCategoryAroundPosition": {
      "type": "object",
      "properties": {
        "PointOfInterestType": {
          "allOf": [
            {
              "$ref": "#/$defs/PointOfInterestTypes"
            }
          ]
        },
        "CategoryType": {
          "type": "integer",
          "format": "int32"
        },
        "Label": {
          "type": [
            "string",
            "null"
          ]
        },
        "SubCategories": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "$ref": "#/$defs/SubCategoryAroundPosition"
          }
        }
      },
      "additionalProperties": false
    },
    "TravelModes": {
      "enum": [
        "Driving",
        "Walking",
        "Bicycling",
        "Transit"
      ],
      "type": "string"
    }
  }
}