مستندات وب سرویس

متد SearchByCityAndDate

Download Markdown for LLM

این متد برای جستجو و دریافت فهرست هتل‌های قابل رزرو به‌همراه اطلاعات قیمت آن‌ها در یک شهر مشخص و بر اساس تاریخ مورد نظر استفاده می‌شود.

از آنجا که این متد در Request Model خود اطلاعاتی مانند تعداد اتاق و تعداد میهمان را دریافت نمی‌کند، استفاده از آن محاسبه قیمت نهایی را با پیچیدگی زیادی همراه می‌سازد. در این حالت، کلیه محاسبات مربوط به مواردی مانند تخت اضافه، خدمات پولی و سایر هزینه‌ها باید در سمت کلاینت انجام شود که می‌تواند منجر به افزایش خطا و سربار پیاده‌سازی گردد.

به همین دلیل، توصیه می‌شود به جای این متد از متد SearchByCityAndDateAndGuests استفاده شود که اطلاعات کامل‌تری را دریافت کرده و فرآیند محاسبه قیمت را ساده‌تر و دقیق‌تر می‌کند.

در واقع، دلیل حفظ این متد در نسخه فعلی وب‌سرویس، پشتیبانی از Backward Compatibility است؛ چرا که این متد در نسخه‌های قبلی وب‌سرویس هتل وجود داشته و به منظور جلوگیری از بروز اختلال در سیستم‌های قدیمی، در نسخه جدید نیز حذف نشده است.

این متد تنها هتل‌ها یا انواع اتاق‌هایی را در خروجی بازمی‌گرداند که قرارداد تأمین‌کننده آن‌ها با هتل مربوطه در سیستم «سپهر» بررسی و تأیید شده باشد. بنابراین، ممکن است خروجی این متد با فهرست هتل‌ها یا اتاق‌هایی که در وب‌سایت تأمین‌کننده نمایش داده می‌شود، کاملاً یکسان نباشد.

تأمین‌کنندگان در سیستم رزرواسیون سپهر می‌توانند قوانینی تعریف کنند که بر اساس آن‌ها، تاریخ ورود (Check-in) و تاریخ خروج (Check-out) در فرآیند بررسی Availability دارای اهمیت ویژه‌ای می‌شود. به این معنا که صرفاً موجود بودن یا نبودن اتاق ملاک نیست و ترکیب تاریخ‌های ورود و خروج نیز می‌تواند مستقیماً بر امکان‌پذیری رزرو تأثیر بگذارد.

برای مثال، ممکن است سیستم سپهر برای تاریخ ورود ۵ شهریور و تاریخ خروج ۸ شهریور پاسخ «عدم موجودی» برگرداند، اما برای همان تاریخ ورود و با تاریخ خروج ۹ شهریور، رزرو را تأیید کند.

در نتیجه، پاسخ دریافتی از این متد صرفاً برای تاریخ‌های Check-in و Check-out ارسال‌شده در درخواست معتبر است و امکان تعمیم آن به سایر تاریخ‌های ورود یا خروج وجود ندارد.

سؤال: آیا امکان دارد برای یک رزرو، بخشی از شب‌ها از یک تأمین‌کننده و بخش دیگر از تأمین‌کننده‌ای متفاوت رزرو شود؟

پاسخ: این موضوع به قوانین و محدودیت‌های تعریف‌شده توسط هر تأمین‌کننده بستگی دارد.

توضیح با مثال: فرض کنید یک هتل (مثلاً هتل آرامیس پلاس کیش) توسط چند تأمین‌کننده مختلف ارائه می‌شود و هر تأمین‌کننده ممکن است برای شب‌های خاصی نرخ متفاوتی داشته باشد. برای نمونه، شما قصد دارید یک رزرو ۴ شبه انجام دهید:

  • تأمین‌کننده اول برای دو شب اول نرخ ارزان‌تری ارائه می‌دهد.
  • تأمین‌کننده دوم برای شب سوم و چهارم نرخ مناسب‌تری دارد.
  • نتیجه‌ی درخواست availability اولیه نشان می‌دهد که هر دو تأمین‌کننده برای هر چهار شب موجودی دارند.

در این شرایط ممکن است تصمیم بگیرید:

  • دو شب اول را از تأمین‌کننده اول
  • و دو شب بعدی را از تأمین‌کننده دوم رزرو کنید.

نکته‌ی مهم: با وجود اینکه هر دو تأمین‌کننده موجودی چهار شب را اعلام کرده‌اند، ممکن است به دلیل محدودیت‌هایی که تأمین‌کنندگان روی تاریخ ورود (Check-in) و تاریخ خروج (Check-out) اعمال می‌کنند، امکان رزرو بخشی از این بازه (مثلاً فقط دو شب از چهار شب) وجود نداشته باشد. رزرو اتاق‌ها به تاریخ ورود و خروج بسیار حساس است.

اقدام صحیح برای بررسی امکان رزرو: برای اطمینان از امکان انجام این نوع رزرو، لازم است:

  1. یک درخواست availability برای دو شب اول به تأمین‌کننده اول ارسال شود.
  2. یک درخواست availability جداگانه برای شب سوم و چهارم به تأمین‌کننده دوم ارسال گردد.
  3. تنها در صورتی که هر دو تأمین‌کننده موجودی را تأیید کنند، می‌توان رزروها را به‌صورت جداگانه ثبت نمود.

نکته‌ی فنی مهم: در صورتی که رزرو از دو تأمین‌کننده مختلف انجام شود، به دلیل استقلال نرم‌افزار و سرور هر تأمین‌کننده، این رزروها در دو تراکنش مجزا ثبت می‌شوند. در نتیجه، این احتمال وجود دارد که:

  • رزرو دو شب اول با موفقیت انجام شود،
  • اما رزرو دو شب بعدی به دلیل بروز خطا ناموفق باشد.

بنابراین مدیریت خطا و بررسی وضعیت هر دو رزرو به‌صورت مستقل ضروری است.


API Endpoint

POST https://{SupplierWebsiteUrl}/api/Partners/Hotel/Availability/V4/SearchByCityAndDate

Request Parameters

  • Username

    string

    required

    نام کاربری

    در صورتی که درخواست از طرف یک موتور جستجو بوده و هدف صرفاً دریافت اطلاعات عمومی (بدون انجام عملیات فروش یا رزرو) باشد، مقدار این فیلد باید برابر با public ارسال شود.

  • Password

    string

    required

    رمز عبور به صورت MD5 شده

  • CityIataCode

    string

    required

    کد یاتا شهر مورد نظر

    در حال حاضر وب سرویس هتل سپهر بر اساس کد یاتا فرودگاه آن شهر کار می کند. در نسخه های بعدی وب سرویس، امکان جستجو روی شهرهایی که فاقد کد یاتا هستند نیز اضافه خواهد گردید.

  • CheckinDate

    string

    required

    تاریخ ورود

    با فرمت yyyy-MM-dd و به صورت میلادی

  • CheckoutDate

    string

    required

    تاریخ خروج

    با فرمت yyyy-MM-dd و به صورت میلادی

  • HotelSepehrGlobalId

    number

    optional

    در صورتی که نیاز به دریافت اطلاعات اتاق های موجود و نرخ یک هتل خاص را دارید، کد SepehrGlobalId آن هتل خاص را در این فیلد قرار دهید.


Sample Request

{
    "Username": "testdev1",
    "Password": "25f9e794323b453885f5181f1b624d0b",
    "CityIataCode": "KIH",
    "CheckinDate": "2026-05-22",
    "CheckoutDate": "2026-05-25",
    "HotelSepehrGlobalId": null
}

Response Parameters

  • CurrencyCode

    string

    این فیلد مشخص می کند که نرخ های برگشتی بر اساس چه ارزی می باشد.

    مقدار آن بستگی به این دارد که ارز کاربر شما در سایت تامین کننده چه چیزی تعیین شده باشد. مثلا اگر کاربر شما به صورت ریالی باشد مقدار آن IRR و اگر دلاری باشد مقدار آن USD خواهد بود.

  • HotelList

    Complex type

    لیست هتل های قابل رزرو

    + نمایش ویژگی‌های زیرمجموعه

    • HotelList.SepehrGlobalId

      number

      شناسه منحصر به فرد مربوط به این هتل در تمام سایت های سپهری

    • HotelList.Name

      string

      نام هتل

    • HotelList.RoomTypeList

      Complex type

      لیست انواع اتاق موجود روی این هتل

      + نمایش ویژگی‌های زیرمجموعه

      • HotelList.RoomTypeList.SepehrGlobalId

        number

        شناسه منحصر به فرد مربوط به این نوع اتاق در تمام سایت های سپهری

      • HotelList.RoomTypeList.Name

        string

        عنوان نوع اتاق

      • HotelList.RoomTypeList.AvailableRoomCount

        number

        تعداد اتاق موجود

        در صورتی 4 باب اتاق یا بیشتر موجود باشد، ماکزیمم عدد 4 خروجی داده می شود.

      • HotelList.RoomTypeList.AdultCapacity

        number

        تعداد گنجایش بزرگسال

      • HotelList.RoomTypeList.ChildCapacity

        number

        تعداد گنجایش کودک که بدون تخت و به صورت رایگان در این نوع اتاق پذیرش می گردد.

        در صورتی که تعداد کودک رایگان درخواستی شما بیشتر از گنجایش کودک رایگان اتاق باشد، سیستم تفاوت تعداد کودک درخواستی شما با تعداد گنجایش کودک اتاق را به عنوان بزرگسال در نظر خواهد گرفت. در این حالت اگر اتاق گنجایش اضافه بابت بزرگسال داشته باشد، بدون مشکلی می توان رزرو را صادر کرد. اما اگر تعداد گنجایش بزرگسال اتاق هم جوابگوی تعداد میهمان درخواستی نباشد، رزرو با استفاده از تخت اضافه قابل انجام است. البته با این شرط که اتاق ظرفیت تخت اضافه داشته باشد (رجوع به فیلد ExtrabedCapacity) جهت استفاده از تخت اضافه کافی است که مبلغ آن را در زمان فراخوانی متدهای Lock و Book به فیلد TotalPayable اضافه کرد.

        مثال: یک نوع اتاق دارای AdultCapacity با مقدار 2 و ChildCapacity با مقدار 1 و ChildAge با مقدار 5 می باشد

        • در صورتی که رزرو شما دارای دو بزرگسال و یک کودک زیر 5 سال باشد، آنگاه بدون نیاز به تخت اضافه می توان اقدام به رزرو نمود.
        • در صورتی که رزرو شما دارای یک بزرگسال و دو کودک زیر 5 سال باشد، آنگاه بدون نیاز به تخت اضافه می توان اقدام به رزرو نمود.
        • در صورتی که رزرو شما دارای دو بزرگسال و دو کودک زیر 5 سال باشد، انگاه باید مبلغ یک تخته اضافه را به مبلغ رزرو اضافه نمود.
      • HotelList.RoomTypeList.ChildAge

        number

        سن قابل قبول برای پذیرش یک میهمان به عنوان کودک.

        بنابراین

        1. در صورتی که سن کودک بیش از مقدار این فیلد باشد
        2. و همچنین رزرو اتاق نیاز به تخت اضافه داشته باشد. (زمانی رزرو اتاق نیاز به استفاده از تخت اضافه دارد که از تمام ظرفیت AdultCapacity استفاده شده باشد و جایی برای مسافران باقی مانده روی AdultCapacity نباشد.)
        3. آنگاه باید در زمان فراخوانی متدهای Lock و Book، با اضافه کردن نرخ تخت اضافه به مجموع فیلد TotalPayable، درخواست تخت اضافه نمود.

        مثال: یک نوع اتاق دارای AdultCapacity با مقدار 2 و ChildCapacity با مقدار 1 و ChildAge با مقدار 5 می باشد.

        • در صورتی که رزرو شما دارای دو بزرگسال و یک کودک چهار ساله باشد، انگاه بدون نیاز به تخت اضافه می توان اقدام به رزرو نمود.
        • در صورتی که رزرو شما دارای دو بزرگسال و یک کودک شش ساله باشد، انگاه باید یک تخت اضافه به رزرو اضافه نمود.
        • در صورتی که رزرو شما دارای دو بزرگسال و یک کودک شش ساله و یک کودک چهار ساله باشد، باید تنها یک عدد تخت اضافه به رزرو اضافه نمود.
        • در صورتی که رزرو شما دارای یک بزرگسال و یک کودک شش ساله باشد، آنگاه بدون نیاز به تخت اضافه می توان اقدام به رزرو نمود.
      • HotelList.RoomTypeList.BoardTypeList

        complex type

        لیست انواع بورد که روی یک نوع اتاق قابل رزرو گرفتن می باشد

        + نمایش ویژگی‌های زیرمجموعه

        • HotelList.RoomTypeList.BoardTypeList.Code

          string

          کد نوع بورد که یکی از موارد زیر می باشد:

          RO مخفف Room Only و به معنی اسکان تک و بدون هیچ وعده غذایی می باشد.

          SC مخفف Self Catering می باشد و بیشتر در هتل آپارتمان ها تعریف می شود.

          BB مخفف Bed & Breakfast و به معنی اقامت با صبحانه می باشد

          HB مخفف Half Board و به معنی اقامت به همراه صبحانه و ناهار می باشد.

          BD به معنی اقامت به همراه صبحانه و شام می باشد.

          BS به معنی اقامت به همراه صبحانه و یک وعده غذایی دیگر به انتخاب مسافر (یا ناهار یا شام) می باشد.

          FC به معنی Full Board و اقامت به همراه صبحانه و ناهار و شام به صورت منوی بسته می باشد.

          FB به معنی Full Board و اقامت به همراه صبحانه و ناهار و شام به صورت منوی انتخابی می باشد.

          FF به معنی Full Board و اقامت به همراه صبحانه و ناهار و شام به صورت منوی بوفه می باشد.

          AI مخفف All Inclusive و از نظر ارائه میان وعده های غذایی بالاتر از FB می باشد.

          UA مخفف Ultra All Inclusive می باشد

        • HotelList.RoomTypeList.BoardTypeList.ExtrabedCapacity

          number

          تعداد گنجایش تخت اضافه این نوع اتاق

          در صورتی که تعداد مسافر بزرگسال بیش از ظرفیت AdultCapacity باشد، می توان با انتخاب تخت اضافه مسافران بیشتری را در اتاق اسکان داد.

        • HotelList.RoomTypeList.BoardTypeList.RateDetailList

          Complex type

          جزییات نرخ بر اساس هر شب

          + نمایش ویژگی‌های زیرمجموعه

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Date

            string

            تاریخ نرخ به صورت میلادی و با فرمت yyyy-MM-dd

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Room_BoardPrice_TaxIncluded

            number

            نرخ بورد این نوع اتاق برای یک شب (بدون کسر کمیسیون و با احتساب مالیات)

            مقدار این فیلد جهت نمایش در سایت شما به مسافر کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان مبلغ اولیه (قبل از اعمال شدن تخفیف) به مسافر نمایش دهید

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Room_NetPrice_TaxExcluded

            number

            نرخ نهایی این نوع اتاق برای یک شب (بعد از کسر کمیسیون و بدون احتساب مالیات)

            مقدار این فیلد جهت بخش مالی مجموعه شما کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان خالص خرید در سیستم معاملات فصلی ثبت نمایید

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Room_NetPrice_TaxIncluded

            number

            نرخ نهایی این نوع اتاق برای یک شب (بعد از کسر کمیسیون و با احتساب مالیات)

            مقدار این فیلد جهت نمایش در سایت شما به مسافر کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان مبلغ نهایی (بعد از اعمال شدن تخفیف) به مسافر نمایش دهید

            همچنین از مقدار این فیلد در زمان فراخوانی متدهای Lock و Book استفاده می شود. متدهای ذکر شده پارامتری به عنوان TotalPayable دریافت می کنند که مقدار آن از این فیلد بدست می آید.

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Extrabed_BoardPrice_TaxIncluded

            number

            نرخ بورد یک عدد تخت اضافه برای یک شب (بدون کسر کمیسیون و با احتساب مالیات)

            مقدار این فیلد جهت نمایش در سایت شما به مسافر کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان مبلغ اولیه (قبل از اعمال شدن تخفیف) به مسافر نمایش دهید

            برای بدست آوردن مجموع، باید مقدار این فیلد را ضربدر تعداد تخت اضافه مورد نیاز نمایید

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Extrabed_NetPrice_TaxExcluded

            number

            نرخ یک عدد تخت اضافه برای یک شب (بعد از کسر کمیسیون و بدون احتساب مالیات)

            مقدار این فیلد جهت بخش مالی مجموعه شما کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان خالص خرید در سیستم معاملات فصلی ثبت نمایید

            برای بدست آوردن مجموع، باید مقدار این فیلد را ضربدر تعداد تخت اضافه مورد نیاز نمایید

          • HotelList.RoomTypeList.BoardTypeList.RateDetailList.Extrabed_NetPrice_TaxIncluded

            number

            نرخ نهایی یک عدد تخت اضافه برای یک شب (بعد از کسر کمیسیون و با احتساب مالیات)

            مقدار این فیلد جهت نمایش در سایت شما به مسافر کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان مبلغ نهایی (بعد از اعمال شدن تخفیف) به مسافر نمایش دهید

            برای بدست آوردن مجموع، باید مقدار این فیلد را ضربدر تعداد تخت اضافه مورد نیاز نمایید

            در صورت تمایل به رزرو تخت اضافه، می بایست در زمان فراخوانی متدهای Lock و Book، مقدار این فیلد را به مقدار پارامتر TotalPayable اضافه نموده و درخواست خود را ارسال نمایید.

    • HotelList.AmenityList

      Complex type

      لیست خدمات ارائه شده روی این هتل

      + نمایش ویژگی‌های زیرمجموعه

      • HotelList.AmenityList.SepehrGlobalId

        number

        شناسه منحصر به فرد مربوط به این خدمت در تمام سایت های سپهری

      • HotelList.AmenityList.Name

        string

        عنوان خدمت

      • HotelList.AmenityList.RateDetailList

        complex type

        جزییات نرخ بر اساس هر شب

        + نمایش ویژگی‌های زیرمجموعه

        • HotelList.AmenityList.RateDetailList.Date

          string

          تاریخ نرخ به صورت میلادی و با فرمت yyyy-MM-dd

        • HotelList.AmenityList.RateDetailList.GuestAgeRangeStart

          number

          حداقل سن میهمان (بر حسب سال) که این خدمت برای آن قابل ارائه است.

        • HotelList.AmenityList.RateDetailList.GuestAgeRangeEnd

          number

          حداکثر سن میهمان (بر حسب سال) که این خدمت برای آن قابل ارائه است.

        • HotelList.AmenityList.RateDetailList.BoardPrice_TaxIncluded

          decimal

          نرخ بورد یک عدد از این خدمت برای یک شب (بدون کسر کمیسیون و با احتساب مالیات)

          مقدار این فیلد جهت نمایش در سایت شما به مسافر کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان مبلغ اولیه (قبل از اعمال شدن تخفیف) به مسافر نمایش دهید

        • HotelList.AmenityList.RateDetailList.NetPrice_TaxExcluded

          decimal

          نرخ نهایی یک عدد خدمت برای یک شب (بعد از کسر کمیسیون و بدون احتساب مالیات)

          مقدار این فیلد جهت بخش مالی مجموعه شما کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان خالص خرید در سیستم معاملات فصلی ثبت نمایید

        • HotelList.AmenityList.RateDetailList.NetPrice_TaxIncluded

          decimal

          نرخ نهایی یک عدد خدمت برای یک شب (بعد از کسر کمیسیون و با احتساب مالیات)

          مقدار این فیلد جهت نمایش در سایت شما به مسافر کاربرد دارد. به این صورت که می توانید مقدار این فیلد را به عنوان مبلغ نهایی (بعد از اعمال شدن تخفیف) به مسافر نمایش دهید

          برای بدست آوردن مجموع، باید مقدار این فیلد را ضربدر تعداد میهمان هایی که سن آنها در بازه GuestAgeRangeStart و GuestAgeRangeEnd قرار میگیرد نمایید. همچنین این مجموع را باید به ازای هر آیتم که در لیست RateDetailList دارید (یعنی برای هر شب یا همان Date) اینکار را انجام دهید و مجموعه همه آیتم ها را با هم مجددا جمع نمایید.

          همچنین از مقدار این فیلد در زمان فراخوانی متدهای Lock و Book استفاده می شود. متدهای ذکر شده پارامتری به عنوان TotalPayable دریافت می کنند که مقدار آن از این فیلد بدست می آید.


Sample Response

{
    "HotelList": [{
            "SepehrGlobalId": 101,
            "Name": "هتل کوهستان تستي",
            "RoomTypeList": [{
                    "SepehrGlobalId": 5001,
                    "Name": "يک تخته استاندارد",
                    "AvailableRoomCount": 4,
                    "AdultCapacity": 1,
                    "ChildCapacity": 0,
                    "ChildAge": 5,
                    "BoardTypeList": [{
                            "Code": "BB",
                            "ExtrabedCapacity": 1,
                            "RateDetailList": [{
                                    "Date": "2026-05-22",
                                    "Room_BoardPrice_TaxIncluded": 4360000.00,
                                    "Room_NetPrice_TaxExcluded": 3600000.00,
                                    "Room_NetPrice_TaxIncluded": 3924000.00,
                                    "Extrabed_BoardPrice_TaxIncluded": 1090000.00,
                                    "Extrabed_NetPrice_TaxExcluded": 900000.00,
                                    "Extrabed_NetPrice_TaxIncluded": 981000.00
                                }, {
                                    "Date": "2026-05-23",
                                    "Room_BoardPrice_TaxIncluded": 4360000.00,
                                    "Room_NetPrice_TaxExcluded": 3600000.00,
                                    "Room_NetPrice_TaxIncluded": 3924000.00,
                                    "Extrabed_BoardPrice_TaxIncluded": 1090000.00,
                                    "Extrabed_NetPrice_TaxExcluded": 900000.00,
                                    "Extrabed_NetPrice_TaxIncluded": 981000.00
                                }, {
                                    "Date": "2026-05-24",
                                    "Room_BoardPrice_TaxIncluded": 4360000.00,
                                    "Room_NetPrice_TaxExcluded": 3600000.00,
                                    "Room_NetPrice_TaxIncluded": 3924000.00,
                                    "Extrabed_BoardPrice_TaxIncluded": 1090000.00,
                                    "Extrabed_NetPrice_TaxExcluded": 900000.00,
                                    "Extrabed_NetPrice_TaxIncluded": 981000.00
                                }
                            ]
                        }
                    ]
                },
                // ... بیشتر انواع اتاق
            ],
            "AmenityList": [{
                    "SepehrGlobalId": 102,
                    "Name": "استخر روباز",
                    "RateDetailList": [{
                            "Date": "2026-05-22",
                            "GuestAgeRangeStart": 3,
                            "GuestAgeRangeEnd": 120,
                            "BoardPrice_TaxIncluded": 5450000.0,
                            "NetPrice_TaxExcluded": 5000000.0,
                            "NetPrice_TaxIncluded": 5450000.0
                        }, {
                            "Date": "2026-05-23",
                            "GuestAgeRangeStart": 3,
                            "GuestAgeRangeEnd": 120,
                            "BoardPrice_TaxIncluded": 5450000.0,
                            "NetPrice_TaxExcluded": 5000000.0,
                            "NetPrice_TaxIncluded": 5450000.0
                        }, {
                            "Date": "2026-05-24",
                            "GuestAgeRangeStart": 3,
                            "GuestAgeRangeEnd": 120,
                            "BoardPrice_TaxIncluded": 5450000.0,
                            "NetPrice_TaxExcluded": 5000000.0,
                            "NetPrice_TaxIncluded": 5450000.0
                        }
                    ]
                },
                // ... بیشتر خدمات
            ]
        }, {
            "SepehrGlobalId": 1030,
            "Name": "هتل لوتوس",
            "RoomTypeList": [
                // ... انواع اتاق هتل لوتوس
            ],
            "AmenityList": [
                // ... خدمات هتل لوتوس
            ]
        }
    ],
    "CurrencyCode": "IRR"
}