{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/suomi-fi/json-schema/suomi-fi-connection-response-schema.json",
  "title": "ConnectionResponse",
  "description": "Connection response",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/suomi-fi-ptv-openapi.yml#/components/schemas/ConnectionResponse",
  "type": "object",
  "required": [
    "serviceContentId",
    "serviceChannelContentId",
    "orderNumber",
    "contactAddresses",
    "chargeType",
    "serviceHours",
    "languageVersions",
    "publishedAt",
    "contactMethodPriority"
  ],
  "properties": {
    "migratedAt": {
      "anyOf": [
        {
          "$ref": "#/$defs/DateTime"
        },
        {
          "type": "null"
        }
      ]
    },
    "serviceContentId": {
      "$ref": "#/$defs/ContentIdType"
    },
    "serviceChannelContentId": {
      "$ref": "#/$defs/ContentIdType"
    },
    "orderNumber": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ]
    },
    "contactAddresses": {
      "$ref": "#/$defs/ConnectionContactAddresses"
    },
    "chargeType": {
      "anyOf": [
        {
          "$ref": "#/$defs/ConnectionChargeType"
        },
        {
          "type": "null"
        }
      ]
    },
    "serviceHours": {
      "$ref": "#/$defs/ServiceHoursResponse"
    },
    "languageVersions": {
      "$ref": "#/$defs/ConnectionLanguageVersionsResponse"
    },
    "publishedAt": {
      "anyOf": [
        {
          "$ref": "#/$defs/DateTime"
        },
        {
          "type": "null"
        }
      ]
    },
    "contactMethodPriority": {
      "$ref": "#/$defs/ContactMethodPriorityResponseSchema"
    }
  },
  "additionalProperties": false,
  "$defs": {
    "AddressSourceResponse": {
      "description": "Address source response",
      "type": "object",
      "required": [
        "source"
      ],
      "oneOf": [
        {
          "$ref": "#/$defs/UserEnteredAddressSourceResponse"
        },
        {
          "$ref": "#/$defs/PostiAddressSourceResponse"
        }
      ],
      "title": "AddressSourceResponse"
    },
    "ClosedExceptionalWeekdayHourResponse": {
      "type": "object",
      "required": [
        "openingStatus",
        "repetition",
        "additionalInformation"
      ],
      "properties": {
        "openingStatus": {
          "type": "string",
          "enum": [
            "Closed"
          ]
        },
        "repetition": {
          "$ref": "#/$defs/WeeklyRepetitionType"
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "description": "Closed exceptional weekday hour. A closed hour has no start or end time.",
      "title": "ClosedExceptionalWeekdayHourResponse"
    },
    "ConnectionChargeType": {
      "description": "Connection charge type",
      "enum": [
        "Free",
        "Charged",
        "Other"
      ],
      "type": "string",
      "title": "ConnectionChargeType"
    },
    "ConnectionContactAddresses": {
      "type": "object",
      "required": [
        "foreignAddresses",
        "postOfficeBoxAddresses",
        "streetAddresses"
      ],
      "properties": {
        "foreignAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ForeignAddressResponse"
          }
        },
        "postOfficeBoxAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/PostOfficeBoxAddressResponse"
          }
        },
        "streetAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StreetAddressResponse"
          }
        }
      },
      "description": "Connection contact address",
      "title": "ConnectionContactAddresses"
    },
    "ConnectionLanguageVersionResponse": {
      "type": "object",
      "required": [
        "chargeTypeAdditionalInformation",
        "description",
        "contactPhoneNumbers",
        "contactFaxNumbers",
        "contactEmails",
        "contactWebPages"
      ],
      "properties": {
        "chargeTypeAdditionalInformation": {
          "anyOf": [
            {
              "type": "string",
              "description": "Markdown-formatted content. Use a Markdown parser/renderer when presenting it."
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "anyOf": [
            {
              "type": "string",
              "description": "Markdown-formatted content. Use a Markdown parser/renderer when presenting it."
            },
            {
              "type": "null"
            }
          ]
        },
        "contactPhoneNumbers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TelephoneNumberResponse"
          }
        },
        "contactFaxNumbers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/FaxNumberResponse"
          }
        },
        "contactEmails": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/EmailResponse"
          }
        },
        "contactWebPages": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/WebPageWithAdditionalInformationResponse"
          }
        }
      },
      "description": "Connection language version response",
      "title": "ConnectionLanguageVersionResponse"
    },
    "ConnectionLanguageVersionsResponse": {
      "type": "object",
      "properties": {
        "fi": {
          "$ref": "#/$defs/ConnectionLanguageVersionResponse"
        },
        "sv": {
          "$ref": "#/$defs/ConnectionLanguageVersionResponse"
        },
        "en": {
          "$ref": "#/$defs/ConnectionLanguageVersionResponse"
        },
        "se": {
          "$ref": "#/$defs/ConnectionLanguageVersionResponse"
        },
        "smn": {
          "$ref": "#/$defs/ConnectionLanguageVersionResponse"
        },
        "sms": {
          "$ref": "#/$defs/ConnectionLanguageVersionResponse"
        }
      },
      "additionalProperties": false,
      "description": "Connection language versions response",
      "title": "ConnectionLanguageVersionsResponse"
    },
    "ContactMethodPriority": {
      "description": "Contact method priority",
      "enum": [
        "FaxNumber",
        "PostalAddress",
        "PhoneNumber",
        "Email",
        "WebSite"
      ],
      "type": "string",
      "title": "ContactMethodPriority"
    },
    "ContactMethodPriorityResponseSchema": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ContactMethodPriority"
      },
      "description": "Contact method priority response",
      "title": "ContactMethodPriorityResponseSchema"
    },
    "ContentIdType": {
      "type": "string",
      "format": "uuid",
      "description": "Content id type",
      "title": "ContentIdType"
    },
    "ContinuousAlwaysValidServiceHourResponse": {
      "type": "object",
      "required": [
        "type",
        "openingStatus",
        "heading",
        "additionalInformation"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "ContinuousAlwaysValidServiceHour"
          ]
        },
        "openingStatus": {
          "$ref": "#/$defs/OpeningStatusType"
        },
        "heading": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "description": "Continuous always valid service hour",
      "title": "ContinuousAlwaysValidServiceHour"
    },
    "ContinuousDateRangeServiceHourResponse": {
      "type": "object",
      "required": [
        "type",
        "openingStatus",
        "heading",
        "additionalInformation",
        "fromDate",
        "toDate",
        "fromTime",
        "toTime",
        "fromDay",
        "toDay"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "ContinuousDateRangeServiceHour"
          ]
        },
        "openingStatus": {
          "$ref": "#/$defs/OpeningStatusType"
        },
        "heading": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "fromDate": {
          "type": "string",
          "title": "iso-date",
          "description": "Date in ISO 8601 format YYYY-MM-DD e.g. 2026-01-15",
          "format": "date"
        },
        "toDate": {
          "type": "string",
          "title": "iso-date",
          "description": "Date in ISO 8601 format YYYY-MM-DD e.g. 2026-01-15",
          "format": "date"
        },
        "fromTime": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "toTime": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "fromDay": {
          "$ref": "#/$defs/WeekdayNamesType"
        },
        "toDay": {
          "$ref": "#/$defs/WeekdayNamesType"
        }
      },
      "description": "Continuous date range service hour",
      "additionalProperties": false,
      "title": "ContinuousDateRangeServiceHour"
    },
    "ContinuousWeekdaysUntilFurtherNoticeServiceHourResponse": {
      "type": "object",
      "required": [
        "type",
        "openingStatus",
        "heading",
        "additionalInformation",
        "fromDay",
        "toDay",
        "fromTime",
        "toTime"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "ContinuousWeekdaysUntilFurtherNoticeServiceHour"
          ]
        },
        "openingStatus": {
          "$ref": "#/$defs/OpeningStatusType"
        },
        "heading": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "fromDay": {
          "$ref": "#/$defs/WeekdayNamesType"
        },
        "toDay": {
          "$ref": "#/$defs/WeekdayNamesType"
        },
        "fromTime": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "toTime": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        }
      },
      "description": "Continuous weekdays until further notice service hour",
      "additionalProperties": false,
      "title": "ContinuousWeekdaysUntilFurtherNoticeServiceHour"
    },
    "CoordinateResponse": {
      "type": "object",
      "required": [
        "system",
        "source",
        "easting",
        "northing"
      ],
      "properties": {
        "system": {
          "enum": [
            "EPSG:3067",
            "Unknown"
          ],
          "type": "string"
        },
        "source": {
          "enum": [
            "NLS",
            "User",
            "AccessibilityRegister"
          ],
          "type": "string"
        },
        "easting": {
          "type": "number"
        },
        "northing": {
          "type": "number"
        }
      },
      "description": "Coordinate",
      "title": "CoordinateResponse"
    },
    "DateTime": {
      "type": "string",
      "format": "date-time",
      "description": "string, e.g. 2025-09-22T07:32:52.026Z",
      "title": "DateTime"
    },
    "DomesticPhoneNumberResponse": {
      "type": "object",
      "required": [
        "additionalInformation",
        "chargeDescription",
        "chargeType",
        "number",
        "type"
      ],
      "properties": {
        "additionalInformation": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "chargeDescription": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "chargeType": {
          "$ref": "#/$defs/PhoneChargeType"
        },
        "number": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "DomesticPhone"
          ]
        }
      },
      "description": "Domestic phone number",
      "additionalProperties": false,
      "title": "DomesticPhoneNumberResponse"
    },
    "EmailResponse": {
      "type": "object",
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string"
        }
      },
      "title": "EmailResponse"
    },
    "ExceptionalDateRangeServiceHourResponse": {
      "type": "object",
      "required": [
        "type",
        "heading",
        "additionalInformation",
        "fromDate",
        "toDate",
        "weeklyHours"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "ExceptionalDateRangeServiceHour"
          ]
        },
        "heading": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "fromDate": {
          "type": "string",
          "title": "iso-date",
          "description": "Date in ISO 8601 format YYYY-MM-DD e.g. 2026-01-15",
          "format": "date"
        },
        "toDate": {
          "type": "string",
          "title": "iso-date",
          "description": "Date in ISO 8601 format YYYY-MM-DD e.g. 2026-01-15",
          "format": "date"
        },
        "weeklyHours": {
          "$ref": "#/$defs/PartialExceptionalWeekResponse"
        }
      },
      "description": "Exceptional date range service hour",
      "additionalProperties": false,
      "title": "ExceptionalDateRangeServiceHour"
    },
    "ExceptionalServiceHourOpeningStatusType": {
      "description": "Opening status",
      "enum": [
        "Open",
        "Closed",
        "OpenOnReservation"
      ],
      "type": "string",
      "title": "ExceptionalServiceHourOpeningStatusType"
    },
    "ExceptionalWeekdayHourTypeResponse": {
      "type": "object",
      "required": [
        "openingStatus"
      ],
      "description": "Exceptional weekday hour",
      "oneOf": [
        {
          "$ref": "#/$defs/OpenExceptionalWeekdayHourResponse"
        },
        {
          "$ref": "#/$defs/ClosedExceptionalWeekdayHourResponse"
        }
      ],
      "title": "ExceptionalWeekdayHourTypeResponse"
    },
    "ExceptionalWeekdayTypeResponse": {
      "type": "object",
      "required": [
        "hours"
      ],
      "properties": {
        "hours": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ExceptionalWeekdayHourTypeResponse"
          }
        }
      },
      "description": "Exceptional weekday",
      "title": "ExceptionalWeekdayTypeResponse"
    },
    "FaxNumberResponse": {
      "type": "object",
      "required": [
        "dialCode",
        "additionalInformation",
        "chargeDescription",
        "chargeType",
        "number",
        "type"
      ],
      "properties": {
        "dialCode": {
          "type": "string"
        },
        "additionalInformation": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "chargeDescription": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "chargeType": {
          "$ref": "#/$defs/PhoneChargeType"
        },
        "number": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "Fax"
          ]
        }
      },
      "description": "Fax number",
      "additionalProperties": false,
      "title": "FaxNumberResponse"
    },
    "ForeignAddressResponse": {
      "type": "object",
      "required": [
        "address",
        "countryCode"
      ],
      "properties": {
        "address": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "countryCode": {
          "type": "string"
        }
      },
      "description": "Foreign address",
      "title": "ForeignAddressResponse"
    },
    "HolidayHourTypeResponse": {
      "type": "object",
      "required": [
        "start",
        "end",
        "openingStatus",
        "additionalInformation"
      ],
      "properties": {
        "start": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "end": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "openingStatus": {
          "$ref": "#/$defs/ExceptionalServiceHourOpeningStatusType"
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "description": "Holiday hour",
      "title": "HolidayHourTypeResponse"
    },
    "HolidayResponse": {
      "type": "object",
      "required": [
        "holidayName",
        "hours"
      ],
      "properties": {
        "holidayName": {
          "enum": [
            "NewYearEve",
            "NewYearDay",
            "Epiphany",
            "MaundyThursday",
            "GoodFriday",
            "EasterSunday",
            "EasterMonday",
            "MayDayEve",
            "MayDay",
            "AscensionDay",
            "WhitSunday",
            "MidsummerEve",
            "MidsummerDay",
            "AllSaintsDay",
            "IndependenceDay",
            "ChristmasEve",
            "ChristmasDay",
            "SecondDayOfChristmas"
          ],
          "type": "string"
        },
        "hours": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/HolidayHourTypeResponse"
          }
        }
      },
      "description": "Holiday. Use a third-party date library to resolve the calendar date for movable holidays, such as Easter Sunday.",
      "title": "HolidayResponse"
    },
    "HolidayServiceHourTypeResponse": {
      "type": "object",
      "required": [
        "repetition",
        "holidays"
      ],
      "properties": {
        "repetition": {
          "$ref": "#/$defs/RepetitionTypeResponse"
        },
        "holidays": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/HolidayResponse"
          }
        }
      },
      "additionalProperties": false,
      "description": "Holiday service hour",
      "title": "HolidayServiceHourTypeResponse"
    },
    "InternationalPhoneNumberResponse": {
      "type": "object",
      "required": [
        "dialCode",
        "additionalInformation",
        "chargeDescription",
        "chargeType",
        "number",
        "type"
      ],
      "properties": {
        "dialCode": {
          "type": "string"
        },
        "additionalInformation": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "chargeDescription": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "chargeType": {
          "$ref": "#/$defs/PhoneChargeType"
        },
        "number": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "InternationalPhone"
          ]
        }
      },
      "description": "International phone number",
      "additionalProperties": false,
      "title": "InternationalPhoneNumberResponse"
    },
    "NormalServiceHoursTypeResponse": {
      "type": "object",
      "required": [
        "type"
      ],
      "description": "Service hours",
      "oneOf": [
        {
          "$ref": "#/$defs/WeeklyUntilFurtherNoticeServiceHour"
        },
        {
          "$ref": "#/$defs/WeeklyDateRangeServiceHourResponse"
        },
        {
          "$ref": "#/$defs/ContinuousAlwaysValidServiceHourResponse"
        },
        {
          "$ref": "#/$defs/ContinuousDateRangeServiceHourResponse"
        },
        {
          "$ref": "#/$defs/ContinuousWeekdaysUntilFurtherNoticeServiceHourResponse"
        },
        {
          "$ref": "#/$defs/ExceptionalDateRangeServiceHourResponse"
        }
      ],
      "title": "NormalServiceHoursTypeResponse"
    },
    "OpenExceptionalWeekdayHourResponse": {
      "type": "object",
      "required": [
        "start",
        "end",
        "openingStatus",
        "repetition",
        "additionalInformation"
      ],
      "properties": {
        "start": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "end": {
          "type": "string",
          "title": "iso-time",
          "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
        },
        "openingStatus": {
          "enum": [
            "Open",
            "OpenOnReservation"
          ],
          "type": "string"
        },
        "repetition": {
          "$ref": "#/$defs/WeeklyRepetitionType"
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "description": "Open exceptional weekday hour",
      "title": "OpenExceptionalWeekdayHourResponse"
    },
    "OpeningStatusType": {
      "description": "Opening status",
      "enum": [
        "Open",
        "OpenOnReservation"
      ],
      "type": "string",
      "title": "OpeningStatusType"
    },
    "PartialExceptionalWeekResponse": {
      "type": "object",
      "properties": {
        "monday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        },
        "tuesday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        },
        "wednesday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        },
        "thursday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        },
        "friday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        },
        "saturday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        },
        "sunday": {
          "$ref": "#/$defs/ExceptionalWeekdayTypeResponse"
        }
      },
      "description": "Partial exceptional week",
      "title": "PartialExceptionalWeekResponse"
    },
    "PartialWeekResponse": {
      "type": "object",
      "properties": {
        "monday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        },
        "tuesday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        },
        "wednesday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        },
        "thursday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        },
        "friday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        },
        "saturday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        },
        "sunday": {
          "$ref": "#/$defs/WeekdayTypeResponse"
        }
      },
      "description": "Partial week",
      "title": "PartialWeekResponse"
    },
    "PhoneChargeType": {
      "description": "Phone call charge type",
      "enum": [
        "Free",
        "Charged",
        "ExtraCharge"
      ],
      "type": "string",
      "title": "PhoneChargeType"
    },
    "PostOfficeBoxAddressResponse": {
      "type": "object",
      "required": [
        "postalCode",
        "postOfficeBox",
        "additionalInformation"
      ],
      "properties": {
        "postalCode": {
          "type": "string"
        },
        "postOfficeBox": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "description": "Post office box address",
      "title": "PostOfficeBoxAddressResponse"
    },
    "PostiAddressSourceResponse": {
      "type": "object",
      "required": [
        "source"
      ],
      "properties": {
        "source": {
          "type": "string",
          "enum": [
            "Posti"
          ]
        }
      },
      "additionalProperties": false,
      "description": "Posti address source",
      "title": "PostiAddressSourceResponse"
    },
    "RepetitionEveryYearResponse": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "RepetitionEveryYear"
          ]
        }
      },
      "additionalProperties": false,
      "description": "Repetition every year",
      "title": "RepetitionEveryYear"
    },
    "RepetitionInSelectedYearsResponse": {
      "type": "object",
      "required": [
        "type",
        "years"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "RepetitionInSelectedYears"
          ]
        },
        "years": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        }
      },
      "additionalProperties": false,
      "description": "Repetition in selected years",
      "title": "RepetitionInSelectedYears"
    },
    "RepetitionTypeResponse": {
      "type": "object",
      "required": [
        "type"
      ],
      "description": "Repetition",
      "oneOf": [
        {
          "$ref": "#/$defs/RepetitionEveryYearResponse"
        },
        {
          "$ref": "#/$defs/RepetitionInSelectedYearsResponse"
        }
      ],
      "title": "RepetitionTypeResponse"
    },
    "ServiceHoursResponse": {
      "type": "object",
      "required": [
        "hours",
        "holidayServiceHours"
      ],
      "properties": {
        "hours": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/NormalServiceHoursTypeResponse"
          }
        },
        "holidayServiceHours": {
          "anyOf": [
            {
              "$ref": "#/$defs/HolidayServiceHourTypeResponse"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "description": "Service hours",
      "title": "ServiceHoursResponse"
    },
    "StreetAddressResponse": {
      "type": "object",
      "required": [
        "addressSource",
        "streetName",
        "addressDetail",
        "postalCode",
        "municipalityCode",
        "coordinates",
        "additionalInformation"
      ],
      "properties": {
        "addressSource": {
          "$ref": "#/$defs/AddressSourceResponse"
        },
        "streetName": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "addressDetail": {
          "type": "string"
        },
        "postalCode": {
          "type": "string"
        },
        "municipalityCode": {
          "type": "string",
          "description": "Municipality code"
        },
        "coordinates": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/CoordinateResponse"
          }
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "description": "Street address",
      "title": "StreetAddressResponse"
    },
    "TelephoneNumberResponse": {
      "description": "Telephone number",
      "type": "object",
      "required": [
        "type"
      ],
      "oneOf": [
        {
          "$ref": "#/$defs/DomesticPhoneNumberResponse"
        },
        {
          "$ref": "#/$defs/InternationalPhoneNumberResponse"
        }
      ],
      "title": "TelephoneNumberResponse"
    },
    "UserEnteredAddressSourceResponse": {
      "type": "object",
      "required": [
        "source"
      ],
      "properties": {
        "source": {
          "type": "string",
          "enum": [
            "UserEntered"
          ]
        }
      },
      "additionalProperties": false,
      "description": "User entered address source",
      "title": "UserEnteredAddressSourceResponse"
    },
    "WebPageWithAdditionalInformationResponse": {
      "type": "object",
      "required": [
        "name",
        "url",
        "additionalInformation"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "additionalInformation": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "description": "Web page with additional information",
      "title": "WebPageWithAdditionalInformationResponse"
    },
    "WeekdayNamesType": {
      "description": "Weekday names",
      "enum": [
        "Monday",
        "Tuesday",
        "Wednesday",
        "Thursday",
        "Friday",
        "Saturday",
        "Sunday"
      ],
      "type": "string",
      "title": "WeekdayNamesType"
    },
    "WeekdayTypeResponse": {
      "type": "object",
      "required": [
        "hours"
      ],
      "properties": {
        "hours": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "start",
              "end",
              "openingStatus",
              "repetition",
              "additionalInformation"
            ],
            "properties": {
              "start": {
                "type": "string",
                "title": "iso-time",
                "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
              },
              "end": {
                "type": "string",
                "title": "iso-time",
                "description": "Time in ISO 8601 format hh:mm e.g. 17:59"
              },
              "openingStatus": {
                "$ref": "#/$defs/OpeningStatusType"
              },
              "repetition": {
                "$ref": "#/$defs/WeeklyRepetitionType"
              },
              "additionalInformation": {
                "type": "object",
                "properties": {
                  "fi": {
                    "type": "string"
                  },
                  "sv": {
                    "type": "string"
                  },
                  "en": {
                    "type": "string"
                  },
                  "se": {
                    "type": "string"
                  },
                  "smn": {
                    "type": "string"
                  },
                  "sms": {
                    "type": "string"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      },
      "description": "Weekday",
      "title": "WeekdayTypeResponse"
    },
    "WeeklyDateRangeServiceHourResponse": {
      "type": "object",
      "required": [
        "type",
        "fromDate",
        "toDate",
        "heading",
        "additionalInformation",
        "weeklyHours"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "WeeklyDateRangeServiceHour"
          ]
        },
        "fromDate": {
          "type": "string",
          "title": "iso-date",
          "description": "Date in ISO 8601 format YYYY-MM-DD e.g. 2026-01-15",
          "format": "date"
        },
        "toDate": {
          "type": "string",
          "title": "iso-date",
          "description": "Date in ISO 8601 format YYYY-MM-DD e.g. 2026-01-15",
          "format": "date"
        },
        "heading": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "weeklyHours": {
          "$ref": "#/$defs/PartialWeekResponse"
        }
      },
      "description": "Weekly date range service hour",
      "additionalProperties": false,
      "title": "WeeklyDateRangeServiceHour"
    },
    "WeeklyRepetitionType": {
      "description": "Weekly repetition",
      "enum": [
        "Weekly",
        "OddWeeks",
        "EvenWeeks"
      ],
      "type": "string",
      "title": "WeeklyRepetitionType"
    },
    "WeeklyUntilFurtherNoticeServiceHour": {
      "type": "object",
      "required": [
        "type",
        "heading",
        "additionalInformation",
        "weeklyHours"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "WeeklyUntilFurtherNoticeServiceHour"
          ]
        },
        "heading": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "additionalInformation": {
          "type": "object",
          "properties": {
            "fi": {
              "type": "string"
            },
            "sv": {
              "type": "string"
            },
            "en": {
              "type": "string"
            },
            "se": {
              "type": "string"
            },
            "smn": {
              "type": "string"
            },
            "sms": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "weeklyHours": {
          "$ref": "#/$defs/PartialWeekResponse"
        }
      },
      "description": "Weekly until further notice service hour",
      "additionalProperties": false,
      "title": "WeeklyUntilFurtherNoticeServiceHour"
    }
  }
}