# Generated with protoc-gen-openapi
# https://github.com/google/gnostic/tree/master/cmd/protoc-gen-openapi

openapi: 3.0.3
info:
    title: ""
    version: 0.0.1
paths:
    /api/json/hotels/property:
        get:
            tags:
                - HotelDetailService
            description: GetHotelProperty returns detailed hotel information by property ID.
            operationId: HotelDetailService_GetHotelProperty
            parameters:
                - name: propertyId
                  in: query
                  description: Property ID (dictionary string_id)
                  schema:
                    type: string
                - name: roomTypeId
                  in: query
                  description: Optional room type ID to limit roomTypes in the response
                  schema:
                    type: string
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/GetHotelPropertyResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/json/hotels/propertyId/getResults:
        get:
            tags:
                - OffersService
            description: |-
                GetResults retrieves all offers for a property by property-page search filters
                 This is used for the Property Detail Page (PDP)
            operationId: OffersService_GetResults
            parameters:
                - name: propertyId
                  in: query
                  description: property_id (string, required) - ID of the property/apartment
                  schema:
                    type: string
                - name: currency
                  in: query
                  description: currency (string, required) - Currency for price display
                  schema:
                    type: string
                - name: maxGuests
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: guestsChildrens
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: dateBegin
                  in: query
                  schema:
                    type: string
                - name: dateEnd
                  in: query
                  schema:
                    type: string
                - name: distributionType
                  in: query
                  schema:
                    type: string
                - name: distributionPlatform
                  in: query
                  schema:
                    type: string
                - name: distributionCustomerType
                  in: query
                  schema:
                    type: string
                - name: offset
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: count
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: sortings
                  in: query
                  schema:
                    type: string
                - name: cheap
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: fast
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.bbox.ne.lat
                  in: query
                  schema:
                    type: number
                    format: double
                - name: filters.bbox.ne.lng
                  in: query
                  schema:
                    type: number
                    format: double
                - name: filters.bbox.sw.lat
                  in: query
                  schema:
                    type: number
                    format: double
                - name: filters.bbox.sw.lng
                  in: query
                  schema:
                    type: number
                    format: double
                - name: filters.maxGuests
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.guestsChildrens
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.relevance
                  in: query
                  schema:
                    type: string
                - name: filters.dateBegin
                  in: query
                  schema:
                    type: string
                - name: filters.dateEnd
                  in: query
                  schema:
                    type: string
                - name: filters.currencyId
                  in: query
                  schema:
                    type: string
                - name: filters.isFavorites
                  in: query
                  schema:
                    type: boolean
                - name: filters.useBonuses
                  in: query
                  schema:
                    type: number
                    format: float
                - name: filters.distributionType
                  in: query
                  schema:
                    type: string
                - name: filters.distributionPlatform
                  in: query
                  schema:
                    type: string
                - name: filters.distributionCustomerType
                  in: query
                  schema:
                    type: string
                - name: filters.price
                  in: query
                  schema:
                    type: string
                - name: filters.pets
                  in: query
                  schema:
                    type: boolean
                - name: filters.isSuperguest
                  in: query
                  schema:
                    type: boolean
                - name: filters.bookingNow
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasDiscount
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.superguestFeatures
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.fireplace
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.christmasTree
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isApartment
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isHouse
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isRoom
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isHotel
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isAparthotel
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isMini
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isGuesthouse
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isGlRec
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isBed
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.separateBedrooms
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isStudio
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.distanceToSea
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.countAllBeds
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.countDoubleBeds
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.smoking
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.party
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.freeBabies
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.withoutDeposit
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.wifi
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.condition
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.kitchen
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.refrigerator
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.balcony
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.babyBed
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.washmachine
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.tv
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.kettle
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.crockery
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.microwave
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.oven
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.stove
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.towels
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.iron
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hairdryer
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.jacuzzi
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.sauna
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.dishwasher
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.multicooker
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.terrace
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.wheater
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.parking
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.arbor
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.barbecue
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.pool
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.playground
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.lastFloor
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.notLastFloor
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.notFirstFloor
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.notGroundFloor
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.viewSeas
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.viewMountains
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.viewRiverLake
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.viewCity
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasBreakfast
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasHalfBoard
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasFullBoard
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasAllInclusive
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.ownBathroom
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.ownToilet
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.shower
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.lift
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isDis
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.faster
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.superhost
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.transfer
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasReview
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.checkInEarly
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.checkOutLate
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.fullPrecost
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isSelfIn
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.documents
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.withoutIntermediaries
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.isolation
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.hasVideo
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.propertyIds
                  in: query
                  schema:
                    type: array
                    items:
                        type: string
                - name: filters.stars
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.metro
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.ropewayDistance
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.placeId
                  in: query
                  schema:
                    type: array
                    items:
                        type: string
                - name: filters.area
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.floor
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.reviewScore
                  in: query
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: filters.pricePer
                  in: query
                  schema:
                    type: integer
                    format: int32
                - name: filters.locationId
                  in: query
                  schema:
                    type: string
                - name: filters.locationType
                  in: query
                  schema:
                    type: string
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/GetPropertyOffersResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/json/hotels/roomTypes:
        get:
            tags:
                - RoomTypesService
            description: GetRoomTypes returns room types for a property by property ID.
            operationId: RoomTypesService_GetRoomTypes
            parameters:
                - name: propertyId
                  in: query
                  description: Property ID (dictionary string_id)
                  schema:
                    type: string
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/GetRoomTypesResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/json/hotels/{propertyId}/gallery:
        get:
            tags:
                - PhotosService
            description: GetPropertyGallery returns hotel photos organized by rooms with previews and pagination.
            operationId: PhotosService_GetPropertyGallery
            parameters:
                - name: propertyId
                  in: path
                  description: Property UUID
                  required: true
                  schema:
                    type: string
                - name: offset
                  in: query
                  description: Pagination offset (default 0)
                  schema:
                    type: integer
                    format: int32
                - name: limit
                  in: query
                  description: Pagination limit (default 12)
                  schema:
                    type: integer
                    format: int32
                - name: tags
                  in: query
                  description: Filter by photo tags (optional, comma-separated in HTTP)
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: types
                  in: query
                  description: Filter by media types (legacy mdatas type_id values)
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/GetPropertyGalleryResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/json/objects/{objectId}/media:
        get:
            tags:
                - PhotosService
            description: GetObjectMedia returns photos for a specific room (object) with pagination.
            operationId: PhotosService_GetObjectMedia
            parameters:
                - name: objectId
                  in: path
                  description: Object (room) identifier
                  required: true
                  schema:
                    type: string
                - name: propertyId
                  in: query
                  description: Property UUID for fast-path lookup
                  schema:
                    type: string
                - name: offset
                  in: query
                  description: Pagination offset (default 0)
                  schema:
                    type: integer
                    format: int32
                - name: limit
                  in: query
                  description: Pagination limit (default 20)
                  schema:
                    type: integer
                    format: int32
                - name: tags
                  in: query
                  description: Filter by photo tags (optional)
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
                - name: types
                  in: query
                  description: Filter by media types (legacy mdatas type_id values)
                  schema:
                    type: array
                    items:
                        type: integer
                        format: int32
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/GetObjectMediaResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/analytics/recalculate_metrics:
        post:
            tags:
                - AnalyticsService
            operationId: AnalyticsService_RecalculateMetrics
            requestBody:
                content:
                    application/json: {}
                required: true
            responses:
                "200":
                    description: OK
                    content: {}
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/exclusive-content/load:
        post:
            tags:
                - ToolsService
            operationId: ToolsService_LoadExclusiveContent
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/LoadExclusiveContentRequest'
                required: true
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/LoadExclusiveContentResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/exclusive-content/update:
        post:
            tags:
                - ToolsService
            operationId: ToolsService_UpdateExclusiveContent
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/UpdateExclusiveContentRequest'
                required: true
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UpdateExclusiveContentResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/favorites/properties:
        post:
            tags:
                - FavoritesService
            operationId: FavoritesService_ListPropertiesWithCities
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/ListPropertiesByCountriesRequest'
                required: true
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ListPropertiesByCountriesResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/reviews:
        post:
            tags:
                - ReviewService
            operationId: ReviewService_Create
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/CreateReviewRequest'
                required: true
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/CreateReviewResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/seo/countries:
        get:
            tags:
                - SeoService
            operationId: SeoService_GetCountries
            responses:
                "200":
                    description: OK
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/GetCountriesResponse'
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/set_import_status:
        post:
            tags:
                - ToolsService
            operationId: ToolsService_SetImportStatus
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/SetImportStatusRequest'
                required: true
            responses:
                "200":
                    description: OK
                    content: {}
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
    /api/v1/set_maximum_version:
        post:
            tags:
                - ToolsService
            operationId: ToolsService_SetMaximumVersion
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/SetMaximumVersionRequest'
                required: true
            responses:
                "200":
                    description: OK
                    content: {}
                default:
                    description: Default error response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/Status'
components:
    schemas:
        Accreditation:
            type: object
            properties:
                name:
                    type: string
                    description: Hotel name from hotelInfo
                status:
                    type: string
                    description: Hotel status
                recordType:
                    type: string
                    description: Accommodation type
                record:
                    type: string
                    description: Registry record number
                url:
                    type: string
                    description: FSA website URL
            description: Accreditation represents FSA accreditation information.
        AirportResponse:
            required:
                - distance
            type: object
            properties:
                distance:
                    type: integer
                    description: Distance (meters)
                    format: int32
                title:
                    type: string
                    description: Airport name
                lat:
                    type: string
                    description: Latitude (nullable)
                lng:
                    type: string
                    description: Longitude (nullable)
            description: AirportResponse represents airport distance.
        AmenityResponse:
            required:
                - group
                - title
                - name
            type: object
            properties:
                group:
                    type: string
                    description: Amenity group (e.g., "AMENITY_GROUP_ROOM")
                title:
                    type: string
                    description: Amenity title (e.g., "Wi-Fi в номере")
                name:
                    type: string
                    description: Amenity code (e.g., "AMENITY_INTERNET_ROOMS")
                isPaid:
                    type: boolean
                    description: Whether this amenity is paid
                price:
                    type: string
                    description: Price for paid amenity
                currency:
                    type: string
                    description: Currency code (e.g., "rub", "usd")
                optionalInfo:
                    type: string
                    description: Additional information about the amenity
                priceType:
                    type: string
                    description: Price unit for paid amenity (daily, period, hourly)
            description: AmenityResponse represents an amenity (v2.0).
        Attribute:
            type: object
            properties:
                meta:
                    $ref: '#/components/schemas/Meta'
                value:
                    type: string
        Bed:
            required:
                - name
                - title
                - count
                - isExtraBed
            type: object
            properties:
                name:
                    type: string
                    description: Bed type code (e.g., "BED_TYPE_SINGLE_BED")
                title:
                    type: string
                    description: Bed type title (e.g., "односпальная кровать")
                count:
                    type: integer
                    description: Number of beds of this type
                    format: int32
                isExtraBed:
                    type: boolean
                    description: Whether this is an extra bed
            description: Bed represents a bed in the room.
        CancellationPolicy:
            type: object
            properties:
                type:
                    type: string
                dateBegin:
                    type: string
                    format: date-time
                dateEnd:
                    type: string
                    format: date-time
                price:
                    $ref: '#/components/schemas/Price'
            description: CancellationPolicy - Cancellation policy
        Cashback:
            type: object
            properties:
                title:
                    type: string
                value:
                    type: number
                    format: double
            description: Cashback - Cashback information
        CertResponse:
            required:
                - certNum
                - certDate
            type: object
            properties:
                certNum:
                    type: string
                    description: Certificate number
                certDate:
                    type: string
                    description: Valid until date
            description: CertResponse represents a hotel certificate.
        City:
            required:
                - name
                - country
            type: object
            properties:
                name:
                    type: string
                country:
                    type: string
        CityResponse:
            required:
                - id
                - title
            type: object
            properties:
                id:
                    type: string
                    description: City ID
                title:
                    type: string
                    description: City name
            description: CityResponse represents city information.
        CityWithHotels:
            required:
                - city
                - hotels
            type: object
            properties:
                city:
                    $ref: '#/components/schemas/City'
                hotels:
                    type: object
                    additionalProperties:
                        $ref: '#/components/schemas/FavoriteHotel'
        Country:
            required:
                - id
                - name
                - hotelsCount
            type: object
            properties:
                id:
                    type: string
                name:
                    type: string
                hotelsCount:
                    type: string
        CreateReview:
            required:
                - author
                - hotel
                - advantages
                - disadvantages
                - starRating
                - starService
                - starPlace
                - starPrice
                - starCleaning
            type: object
            properties:
                author:
                    type: string
                avatar:
                    type: string
                hotel:
                    type: string
                advantages:
                    type: string
                disadvantages:
                    type: string
                photos:
                    type: array
                    items:
                        type: string
                starRating:
                    type: integer
                    format: uint32
                starService:
                    type: integer
                    format: uint32
                starPlace:
                    type: integer
                    format: uint32
                starPrice:
                    type: integer
                    format: uint32
                starCleaning:
                    type: integer
                    format: uint32
        CreateReviewRequest:
            required:
                - review
            type: object
            properties:
                review:
                    $ref: '#/components/schemas/CreateReview'
        CreateReviewResponse:
            required:
                - review
            type: object
            properties:
                review:
                    $ref: '#/components/schemas/Review'
        Executor:
            required:
                - name
            type: object
            properties:
                name:
                    type: string
                    description: Legal entity name
                inn:
                    type: string
                    description: INN (Tax ID)
                kpp:
                    type: string
                    description: KPP
                ogrn:
                    type: string
                    description: OGRN
                phone:
                    type: string
                    description: Phone number
                email:
                    type: string
                    description: Email
                address:
                    type: string
                    description: Address
                sellerLegalStatus:
                    type: string
                    description: 'Seller legal status: LEGAL_ENTITY, SOLE_PROPRIETOR, SELF_EMPLOED, INDIVIDUAL, NON_RESIDENT_COMPANY, NON_RESIDENT_INDIVIDUAL'
                sellerCompanyShortName:
                    type: string
                    description: Seller company short name
                accredetationInfo:
                    allOf:
                        - $ref: '#/components/schemas/Accreditation'
                    description: Accreditation information
                workingHours:
                    type: string
                    description: 'Working hours - v2.2: added per spec'
            description: Executor represents the legal entity operating the hotel.
        FavoriteHotel:
            required:
                - id
                - name
                - address
                - city
                - photos
                - rating
                - amenities
                - starRating
            type: object
            properties:
                id:
                    type: string
                name:
                    type: string
                address:
                    type: string
                city:
                    $ref: '#/components/schemas/HotelCity'
                photos:
                    type: array
                    items:
                        $ref: '#/components/schemas/FavoriteHotelPhoto'
                rating:
                    $ref: '#/components/schemas/FavoriteHotelRating'
                amenities:
                    type: array
                    items:
                        $ref: '#/components/schemas/FavoriteHotelAmenity'
                starRating:
                    type: string
        FavoriteHotelAmenity:
            required:
                - name
                - type
                - value
                - group
            type: object
            properties:
                name:
                    type: string
                type:
                    type: string
                value:
                    type: string
                group:
                    type: string
        FavoriteHotelPhoto:
            required:
                - url
            type: object
            properties:
                url:
                    type: string
        FavoriteHotelRating:
            required:
                - arrival
                - cleaning
                - place
                - price
                - service
                - total
                - reviewCount
                - scores
                - sources
            type: object
            properties:
                arrival:
                    type: number
                    format: float
                cleaning:
                    type: number
                    format: float
                place:
                    type: number
                    format: float
                price:
                    type: number
                    format: float
                service:
                    type: number
                    format: float
                total:
                    type: number
                    format: float
                reviewCount:
                    type: integer
                    format: int32
                scores:
                    type: integer
                    format: int32
                sources:
                    type: array
                    items:
                        type: integer
                        format: enum
        GetCountriesResponse:
            required:
                - countries
            type: object
            properties:
                countries:
                    type: array
                    items:
                        $ref: '#/components/schemas/Country'
        GetHotelPropertyResponse:
            required:
                - success
                - data
                - errors
                - actions
                - platform
                - uuid
                - timestamp
            type: object
            properties:
                success:
                    type: boolean
                data:
                    $ref: '#/components/schemas/PropertyResponse'
                errors:
                    type: array
                    items:
                        type: string
                actions:
                    type: array
                    items:
                        type: string
                platform:
                    type: string
                uuid:
                    type: string
                timestamp:
                    type: string
            description: GetHotelPropertyResponse wraps the response in SuccessResponse format.
        GetObjectMediaResponse:
            type: object
            properties:
                media:
                    type: array
                    items:
                        $ref: '#/components/schemas/MediaItem'
                    description: Media items for current page
                count:
                    type: integer
                    description: Total media count (respects tag filter)
                    format: int32
                roomTypeName:
                    type: string
                    description: Room type name for requested object ID
            description: GetObjectMediaResponse - room/object photos response.
        GetPropertyGalleryResponse:
            type: object
            properties:
                previews:
                    type: array
                    items:
                        $ref: '#/components/schemas/Preview'
                    description: Room preview tabs
                media:
                    type: array
                    items:
                        $ref: '#/components/schemas/MediaItem'
                    description: Media items for current page
                count:
                    type: integer
                    description: Total media count (respects tag filter)
                    format: int32
            description: GetPropertyGalleryResponse - hotel photo gallery response.
        GetPropertyOffersResponse:
            type: object
            properties:
                offers:
                    type: array
                    items:
                        $ref: '#/components/schemas/Offer'
                    description: offers - Array of offers for the property
            description: GetPropertyOffersResponse - response with property offers
        GetRoomTypesResponse:
            required:
                - success
                - data
                - errors
                - actions
                - platform
                - uuid
                - timestamp
            type: object
            properties:
                success:
                    type: boolean
                data:
                    $ref: '#/components/schemas/RoomTypesData'
                errors:
                    type: array
                    items:
                        type: string
                actions:
                    type: array
                    items:
                        type: string
                platform:
                    type: string
                uuid:
                    type: string
                timestamp:
                    type: string
            description: GetRoomTypesResponse wraps the response in SuccessResponse format.
        GoogleProtobufAny:
            type: object
            properties:
                '@type':
                    type: string
                    description: The type of the serialized message.
            additionalProperties: true
            description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
        HotelCity:
            required:
                - id
                - name
                - country
            type: object
            properties:
                id:
                    type: string
                name:
                    type: string
                country:
                    $ref: '#/components/schemas/HotelCountry'
        HotelCountry:
            required:
                - id
                - name
            type: object
            properties:
                id:
                    type: string
                name:
                    type: string
        Image:
            required:
                - id
                - imageUrl
            type: object
            properties:
                id:
                    type: string
                    description: Photo ID
                imageUrl:
                    type: string
                    description: Photo URL
                comment:
                    type: string
                    description: Description (nullable)
                blurHash:
                    type: string
                    description: Blur hash for placeholder effect
            description: Image represents a photo.
        Label:
            type: object
            properties:
                type:
                    type: string
                title:
                    type: string
                price:
                    $ref: '#/components/schemas/Price'
                details:
                    $ref: '#/components/schemas/LabelDetails'
            description: Label - Tariff labels
        LabelDetails:
            type: object
            properties:
                nights:
                    type: integer
                    format: int32
                mbBeforeHours:
                    type: integer
                    format: int32
            description: LabelDetails - Label details
        Languages:
            required:
                - title
                - name
            type: object
            properties:
                title:
                    type: string
                    description: Language name (e.g., "Русский")
                name:
                    type: string
                    description: Language code (e.g., "russian")
            description: Languages represents a language.
        ListPropertiesByCountriesRequest:
            required:
                - hotels
            type: object
            properties:
                hotels:
                    type: array
                    items:
                        type: string
        ListPropertiesByCountriesResponse:
            required:
                - hotels
            type: object
            properties:
                hotels:
                    type: array
                    items:
                        $ref: '#/components/schemas/CityWithHotels'
        LoadExclusiveContentRequest:
            type: object
            properties: {}
        LoadExclusiveContentResponse:
            type: object
            properties:
                requestId:
                    type: string
        LocationItemResponse:
            required:
                - id
                - title
            type: object
            properties:
                id:
                    type: string
                    description: Sutochno integer ID as string
                title:
                    type: string
                    description: Display name
            description: LocationItemResponse represents a named location entity (country, region, district).
        Meal:
            type: object
            properties:
                code:
                    type: string
                externalCode:
                    type: string
                title:
                    type: string
                description:
                    type: string
                mealType:
                    $ref: '#/components/schemas/MealType'
            description: Meal - Meal information
        MealType:
            type: object
            properties:
                code:
                    type: string
                externalCode:
                    type: string
                title:
                    type: string
                description:
                    type: string
            description: MealType - Meal type information
        MediaItem:
            type: object
            properties:
                roomTypeId:
                    type: string
                    description: Room/object ID (UUID string, empty for hotel-level)
                id:
                    type: integer
                    description: Photo ID (int32 to ensure JSON number serialization)
                    format: int32
                title:
                    type: string
                    description: Photo title/description
                fullPath:
                    type: string
                    description: Full path to photo (e.g., "https://cdn.example.com/photos/xxx/")
                fileName:
                    type: string
                    description: File name of photo (e.g., "photo1.jpg")
                tags:
                    type: array
                    items:
                        $ref: '#/components/schemas/Tag'
                    description: Photo tags (array of tag objects)
                aspectRatio:
                    type: number
                    description: Aspect ratio as float (e.g., 1.333 for 4:3, 1.778 for 16:9)
                    format: float
                dateAdd:
                    type: string
                    description: Date photo was added (ISO format string, e.g., "2024-01-15")
            description: |-
                MediaItem - A single photo/media item.
                 Analytics spec: Media item with all photo details.
        Meta:
            type: object
            properties:
                updatedAt:
                    type: string
                    format: date-time
                provider:
                    type: integer
                    format: enum
                translations:
                    type: object
                    additionalProperties:
                        type: string
        NoShowPolicy:
            type: object
            properties:
                price:
                    $ref: '#/components/schemas/Price'
                dateBegin:
                    type: string
            description: NoShowPolicy - No-show policy
        Offer:
            type: object
            properties:
                id:
                    type: string
                    description: Identifiers
                roomId:
                    type: string
                instantBooking:
                    type: boolean
                    description: Main parameters
                labels:
                    type: array
                    items:
                        $ref: '#/components/schemas/Label'
                    description: Labels
                prices:
                    allOf:
                        - $ref: '#/components/schemas/Prices'
                    description: Links to objects
                meal:
                    type: array
                    items:
                        $ref: '#/components/schemas/Meal'
                cancellationPolicies:
                    type: array
                    items:
                        $ref: '#/components/schemas/CancellationPolicy'
                noShowPolicy:
                    $ref: '#/components/schemas/NoShowPolicy'
                prePaymentPolicy:
                    $ref: '#/components/schemas/PrePaymentPolicy'
                cashback:
                    $ref: '#/components/schemas/Cashback'
                surcharges:
                    type: array
                    items:
                        $ref: '#/components/schemas/Surcharge'
                freeCancellationBefore:
                    type: string
                    format: date-time
                isNonRefundable:
                    type: boolean
            description: Offer - Property offer with all details
        OwnerResponse:
            type: object
            properties:
                name:
                    type: string
                    description: Owner name
                company:
                    type: string
                    description: Company name
                gender:
                    type: integer
                    description: Gender
                    format: int32
                avatar:
                    type: string
                    description: Avatar URL
                answerRate:
                    type: integer
                    description: Answer rate (%)
                    format: int32
                answerTime:
                    type: integer
                    description: Answer time (minutes)
                    format: int32
                speakLanguages:
                    type: array
                    items:
                        $ref: '#/components/schemas/Languages'
                    description: Languages spoken
                labels:
                    type: array
                    items:
                        type: string
                    description: Owner labels/badges
                dateAdd:
                    type: string
                    description: Date when owner was added - v2.1
                dateLastLogin:
                    type: string
                    description: Date of last login - v2.1
            description: OwnerResponse represents owner information.
        Photo:
            type: object
            properties:
                url:
                    $ref: '#/components/schemas/Attribute'
                category:
                    type: string
                guid:
                    type: string
                description:
                    type: string
                tags:
                    type: array
                    items:
                        $ref: '#/components/schemas/Tag'
                aspectRatio:
                    type: number
                    format: float
                dateAdd:
                    type: string
                isPrimary:
                    type: boolean
        PrePaymentPolicy:
            type: object
            properties:
                required:
                    type: boolean
                effectiveFrom:
                    type: string
                percent:
                    type: integer
                    format: int32
                deadline:
                    type: string
                    format: date-time
                price:
                    $ref: '#/components/schemas/Price'
            description: PrePaymentPolicy - Prepayment policy
        Preview:
            type: object
            properties:
                roomTypeId:
                    type: string
                    description: Room/object ID (UUID string, empty for hotel-level)
                name:
                    type: string
                    description: Room name
                fullPath:
                    type: string
                    description: Full path to cover photo (e.g., "https://cdn.example.com/photos/xxx/")
                fileName:
                    type: string
                    description: File name of cover photo (e.g., "cover.jpg")
                count:
                    type: integer
                    description: Number of photos in this room
                    format: int32
            description: |-
                Preview - Room preview tab for gallery.
                 Analytics spec: Preview for room tabs with cover photo info.
        Price:
            type: object
            properties:
                prices:
                    type: array
                    items:
                        $ref: '#/components/schemas/PricesConvertation'
            description: Price - Array of prices
        Prices:
            type: object
            properties:
                priceTotal:
                    $ref: '#/components/schemas/Price'
                priceBeforeDiscounts:
                    $ref: '#/components/schemas/Price'
                bonus:
                    $ref: '#/components/schemas/Price'
            description: Prices - Offer prices
        PricesConvertation:
            type: object
            properties:
                amount:
                    type: number
                    format: double
                currencyId:
                    type: string
                type:
                    type: string
            description: PricesConvertation - Price conversion information
        Properties:
            required:
                - name
                - title
                - value
            type: object
            properties:
                name:
                    type: string
                    description: Property name (e.g., "area", "floor", "bedrooms")
                title:
                    type: string
                    description: Property title (e.g., "Площадь (м2)")
                value:
                    type: string
                    description: Property value (e.g., "45")
            description: Properties represents room properties.
        PropertyLocationResponse:
            required:
                - address
                - lat
                - lng
            type: object
            properties:
                address:
                    type: string
                    description: Hotel address
                location:
                    type: string
                    description: Location name for breadcrumbs
                place:
                    type: string
                    description: District/place
                lat:
                    type: string
                    description: Latitude
                lng:
                    type: string
                    description: Longitude
                city:
                    allOf:
                        - $ref: '#/components/schemas/CityResponse'
                    description: City information
                country:
                    allOf:
                        - $ref: '#/components/schemas/LocationItemResponse'
                    description: Country as object with id and title
                relations:
                    allOf:
                        - $ref: '#/components/schemas/RelationsResponse'
                    description: Distance relations
                region:
                    allOf:
                        - $ref: '#/components/schemas/LocationItemResponse'
                    description: Region as object with id and title
                placeId:
                    type: integer
                    description: 'Place ID (integer) - v2.2: added per spec'
                    format: int32
            description: PropertyLocationResponse represents property location.
        PropertyResponse:
            required:
                - id
                - url
                - typeTitle
                - isSingleRoom
                - imagesCount
                - name
                - images
                - location
                - info
                - bookingRules
            type: object
            properties:
                id:
                    type: string
                    description: 'Hotel ID (string_id from dictionary) - v2.1: Added as required field'
                sPropertyId:
                    type: string
                    description: 'Human-readable support property ID (format: s123456789)'
                providerLinks:
                    type: array
                    items:
                        $ref: '#/components/schemas/ProviderLinks'
                    description: Provider-specific hotel identifiers (replaces id and hotel_id in v2.0)
                url:
                    type: string
                    description: Hotel URL
                typeTitle:
                    type: string
                    description: Property type title (e.g., "Отель")
                isSingleRoom:
                    type: boolean
                    description: Whether the hotel has only one room
                imagesCount:
                    type: integer
                    description: Total number of photos
                    format: int32
                name:
                    type: string
                    description: Hotel name (without type)
                stars:
                    type: integer
                    description: Star rating
                    format: int32
                rating:
                    type: number
                    description: Hotel rating
                    format: double
                reviewCount:
                    type: integer
                    description: Number of reviews
                    format: int32
                desc:
                    type: string
                    description: Hotel description
                importantInfo:
                    type: string
                    description: Important information from owner
                labels:
                    type: array
                    items:
                        type: string
                    description: Property labels (e.g., "guest_choice", "profitable_option")
                images:
                    type: array
                    items:
                        $ref: '#/components/schemas/Image'
                    description: First 15 photos
                executor:
                    allOf:
                        - $ref: '#/components/schemas/Executor'
                    description: Executor information
                cert:
                    allOf:
                        - $ref: '#/components/schemas/CertResponse'
                    description: Hotel certificate
                location:
                    allOf:
                        - $ref: '#/components/schemas/PropertyLocationResponse'
                    description: Property location
                amenities:
                    type: array
                    items:
                        $ref: '#/components/schemas/AmenityResponse'
                    description: Amenities and services
                amenitiesTop:
                    type: array
                    items:
                        $ref: '#/components/schemas/AmenityResponse'
                    description: Top amenities and services
                superguest:
                    allOf:
                        - $ref: '#/components/schemas/SuperguestResponse'
                    description: 'Superguest properties - GO-332: extended with per-permission flags'
                info:
                    type: array
                    items:
                        $ref: '#/components/schemas/Properties'
                    description: Basic hotel properties
                bookingRules:
                    type: array
                    items:
                        $ref: '#/components/schemas/Rules'
                    description: Booking rules
                owner:
                    allOf:
                        - $ref: '#/components/schemas/OwnerResponse'
                    description: Owner information
                isActive:
                    type: boolean
                    description: Whether the property is active
                roomTypes:
                    type: array
                    items:
                        $ref: '#/components/schemas/RoomType'
                    description: Room types available for the property
            description: PropertyResponse contains the main hotel property data.
        ProviderLinks:
            required:
                - id
                - provider
            type: object
            properties:
                id:
                    type: string
                    description: Hotel ID from the provider
                provider:
                    type: string
                    description: Provider name (e.g., "sutochno")
            description: ProviderLinks represents provider-specific hotel identifiers.
        RailwayResponse:
            required:
                - distance
            type: object
            properties:
                distance:
                    type: integer
                    description: Distance (meters)
                    format: int32
                title:
                    type: string
                    description: Railway station name
                lat:
                    type: string
                    description: Latitude (nullable)
                lng:
                    type: string
                    description: Longitude (nullable)
            description: RailwayResponse represents railway station distance.
        RelationsResponse:
            type: object
            properties:
                seas:
                    type: array
                    items:
                        $ref: '#/components/schemas/SeaResponse'
                    description: Seas (nullable)
                ropeways:
                    type: array
                    items:
                        $ref: '#/components/schemas/RopewaysResponse'
                    description: Ropeways (nullable)
                metro:
                    type: array
                    items:
                        $ref: '#/components/schemas/StationResponse'
                    description: Metro stations within 20 min walk (nullable)
                railway:
                    type: array
                    items:
                        $ref: '#/components/schemas/RailwayResponse'
                    description: Railway stations (nullable)
                airport:
                    type: array
                    items:
                        $ref: '#/components/schemas/AirportResponse'
                    description: Airports (nullable)
                center:
                    type: integer
                    description: Distance to city center (meters)
                    format: int32
            description: RelationsResponse represents distances to various locations.
        Review:
            required:
                - id
                - provider
                - author
                - date
                - hotelId
                - hotel
                - advantages
                - disadvantages
                - photos
                - starRating
                - starService
                - starPlace
                - starPrice
                - starCleaning
                - createdAt
                - text
                - providerId
            type: object
            properties:
                id:
                    type: string
                provider:
                    type: integer
                    format: enum
                author:
                    type: string
                avatar:
                    type: string
                date:
                    type: string
                    format: date-time
                hotelId:
                    type: string
                hotel:
                    type: string
                advantages:
                    type: string
                disadvantages:
                    type: string
                photos:
                    type: array
                    items:
                        $ref: '#/components/schemas/Photo'
                starRating:
                    type: integer
                    format: uint32
                starService:
                    type: integer
                    format: uint32
                starPlace:
                    type: integer
                    format: uint32
                starPrice:
                    type: integer
                    format: uint32
                starCleaning:
                    type: integer
                    format: uint32
                createdAt:
                    type: string
                    format: date-time
                text:
                    type: string
                providerId:
                    type: string
        RoomType:
            required:
                - id
                - objectId
                - name
                - description
                - images
                - imageCount
                - beds
                - info
                - amenities
                - bookingRules
                - superguestPermissions
            type: object
            properties:
                id:
                    type: string
                    description: Room identifier
                objectId:
                    type: string
                    description: Object identifier (from platform, needed for calendar and availability checks)
                name:
                    type: string
                    description: Room name
                description:
                    type: string
                    description: Room description
                images:
                    type: array
                    items:
                        $ref: '#/components/schemas/Image'
                    description: Room photos
                imageCount:
                    type: integer
                    description: Number of photos
                    format: int32
                beds:
                    type: array
                    items:
                        $ref: '#/components/schemas/Bed'
                    description: Beds in the room
                info:
                    type: array
                    items:
                        $ref: '#/components/schemas/Properties'
                    description: Room properties (area, bedrooms, etc.)
                amenities:
                    type: array
                    items:
                        $ref: '#/components/schemas/AmenityResponse'
                    description: Room amenities
                bookingRules:
                    type: array
                    items:
                        $ref: '#/components/schemas/Rules'
                    description: Booking rules
                importantInfo:
                    type: string
                    description: Important information from owner
                superguestPermissions:
                    type: array
                    items:
                        $ref: '#/components/schemas/SuperguestPermission'
                    description: Superguest permissions available for the room type
            description: RoomType represents detailed information about a room.
        RoomTypesData:
            required:
                - roomTypes
            type: object
            properties:
                roomTypes:
                    type: array
                    items:
                        $ref: '#/components/schemas/RoomType'
                    description: Array of room types
            description: RoomTypesData contains the array of room types.
        RopewayGroupResponse:
            required:
                - id
                - title
            type: object
            properties:
                id:
                    type: integer
                    description: Group ID
                    format: int32
                title:
                    type: string
                    description: Group name
            description: RopewayGroupResponse represents ropeway group.
        RopewaysResponse:
            required:
                - id
                - title
                - distance
            type: object
            properties:
                group:
                    allOf:
                        - $ref: '#/components/schemas/RopewayGroupResponse'
                    description: Ropeway group
                id:
                    type: integer
                    description: Station ID
                    format: int32
                title:
                    type: string
                    description: Station name
                lat:
                    type: string
                    description: Latitude (nullable)
                lng:
                    type: string
                    description: Longitude (nullable)
                distance:
                    type: integer
                    description: Distance (meters)
                    format: int32
            description: RopewaysResponse represents ropeway/cable car station.
        Rules:
            required:
                - name
                - title
            type: object
            properties:
                name:
                    type: string
                    description: Rule name (e.g., "party", "pets", "smoking")
                title:
                    type: string
                    description: Rule description (e.g., "вечеринки разрешены")
                value:
                    type: string
                    description: Rule value (e.g., "0", "1", "14:00")
            description: Rules represents booking rules.
        SeaResponse:
            required:
                - distance
                - title
            type: object
            properties:
                distance:
                    type: integer
                    description: Distance to sea (meters)
                    format: int32
                title:
                    type: string
                    description: Sea name
            description: SeaResponse represents sea distance.
        SetImportStatusRequest:
            type: object
            properties:
                isActive:
                    type: boolean
        SetMaximumVersionRequest:
            type: object
            properties:
                maxVersion:
                    type: string
        StationLineResponse:
            required:
                - id
                - title
                - color
            type: object
            properties:
                id:
                    type: integer
                    description: Line ID
                    format: int32
                title:
                    type: string
                    description: Line name
                color:
                    type: string
                    description: Line color
            description: StationLineResponse represents metro line.
        StationResponse:
            required:
                - id
                - title
                - distance
            type: object
            properties:
                id:
                    type: integer
                    description: Station ID
                    format: int32
                title:
                    type: string
                    description: Station name
                line:
                    allOf:
                        - $ref: '#/components/schemas/StationLineResponse'
                    description: Metro line
                lat:
                    type: string
                    description: Latitude (nullable)
                lng:
                    type: string
                    description: Longitude (nullable)
                distance:
                    type: integer
                    description: Distance (meters)
                    format: int32
                walkTime:
                    type: string
                    description: Walk time (minutes)
            description: StationResponse represents metro station.
        Status:
            type: object
            properties:
                code:
                    type: integer
                    description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
                    format: int32
                message:
                    type: string
                    description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
                details:
                    type: array
                    items:
                        $ref: '#/components/schemas/GoogleProtobufAny'
                    description: A list of messages that carry the error details.  There is a common set of message types for APIs to use.
            description: 'The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).'
        SuperguestPermission:
            required:
                - name
                - title
            type: object
            properties:
                name:
                    type: string
                title:
                    type: string
            description: SuperguestPermission represents a superguest privilege.
        SuperguestResponse:
            type: object
            properties:
                enabled:
                    type: boolean
                    description: Whether the property participates in the superguest program
                superguestDiscount:
                    type: boolean
                    description: Whether the property offers a discount for superguests
                withoutDeposit:
                    type: boolean
                    description: Whether the property allows booking without deposit
            description: SuperguestResponse contains superguest program information for a property.
        Surcharge:
            type: object
            properties:
                name:
                    type: string
                included:
                    type: boolean
                price:
                    $ref: '#/components/schemas/Price'
                details:
                    $ref: '#/components/schemas/SurchargesDetails'
            description: Surcharge - Individual surcharge
        SurchargesDetails:
            type: object
            properties:
                guests:
                    type: integer
                    format: int32
            description: SurchargesDetails - Surcharges details
        Tag:
            type: object
            properties:
                id:
                    type: integer
                    description: Tag ID (1-7)
                    format: int32
                name:
                    type: string
                    description: Tag name (BEDROOM, KITCHEN, BATHROOM, YARD, VIEW_FROM_WINDOW, POOL, OTHER)
            description: |-
                Tag - Photo tag object with id and name.
                 Analytics spec: Tag as object with id and name fields.
        UpdateExclusiveContentRequest:
            type: object
            properties: {}
        UpdateExclusiveContentResponse:
            type: object
            properties:
                requestId:
                    type: string
tags:
    - name: AnalyticsService
    - name: FavoritesService
    - name: HotelDetailService
      description: |-
        HotelDetailService provides detailed hotel property information for the frontend.
         Implements the r6 API specification for GET /api/json/hotels/property endpoint.
    - name: OffersService
      description: OffersService provides methods for retrieving property offers
    - name: PhotosService
      description: PhotosService provides methods for retrieving property and room photos.
    - name: ReviewService
    - name: RoomTypesService
      description: |-
        RoomTypesService provides room type information for hotel properties.
         Implements the r6 API specification for GET /api/json/hotels/roomTypes endpoint.
    - name: SeoService
    - name: ToolsService
