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

متد GetByFromDateAndToDate

Download Markdown for LLM

کاربرد این متد برای زمانی است که شما می خواهید اطلاعات را در سیستم خود Cache کنید و سپس درخواست های availability را از Cache خود پاسخ دهید.

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

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

تامین کنندگان در سیستم رزرواسیون سپهر قابلیت تعریف کردن قوانینی را دارند که در نتیجه تعریف شدن آن قوانین، تاریخ ورود و خروج در موضوع availability اهمیت و حساسیت خاص خود را پیدا می کند. بدین معنی که علاوه بر بحث موجود بودن یا نبودن اتاق، تاریخ ورود و خروج هم بر اینکه آیا امکان رزرو اتاق وجود دارد یا خیر تاثیر می گذارد. به عنوان مثال ممکن است سیستم سپهر برای تاریخ ورود 5 شهریور و تاریخ خروج 8 شهریور به شما عدم موجودی جواب دهد ولی برای تاریخ ورود 5 شهریور و تاریخ خروج 9 شهریور به شما تایید رزرو را بدهد. در صورتی که این متد بدون در نظر گرفتن قوانین، تعداد اتاق موجود در هر شب را خروجی می‌دهد.

همچنین سیستم رزرواسیون سپهر در زمان رزرو به شماره اتاق حساس می باشد، بدین معنی که فرض کنیم در تاریخ امشب اتاق 201 و برای تاریخ فردا شب اتاق 202 موجود باشد. در صورتی که شما درخواست رزرو تاریخ ورود امروز و خروج پس فردا را انتخاب نمایید، سیستم رزرواسیون سپهر اجازه رزرو به شما نمی دهد. فقط زمانی اجازه رزرو داده می شود که یا اتاق 201 برای کل بازه تاریخی درخواستی شما موجود باشد یا اتاق 202 برای کل آن بازه تاریخی موجود باشد. در صورتی که این متد (یعنی GetByFromDateAndToDate) این منطق را نقض می کند و در زمان خروجی دادن تعداد اتاق های موجود، بررسی می‌کند که در هر شب چند عدد اتاق موجود هست و به شما آن عدد را خروجی می‌دهد. در صورتی که ممکن است یک شب اتاق 201 موجود بوده باشد و برای شب بعد اتاق 202 و عملا شما امکان رزرو گرفتن نداشته باشید.

با توجه به مثال های بالا، این متد ممکن است تاریخ هایی را به عنوان موجود به شما نشان دهد در صورتی که در عمل در آن تاریخ اتاقی موجود نباشد. بنابراین پس از نمایش خروجی این متد به کاربر، و پس از اینکه کاربر نوع اتاق را انتخاب کرد، می بایست تاریخ دقیق ورود و خروج و همچنین تعداد میهمانان را به متد SearchByCityAndDate ارسال نموده و امکان موجود بودن ظرفیت و نرخ را بررسی نمایید.

با توجه به اینکه تجربه نشان داده است تغییرات ظرفیت و نرخ روی تاریخ های نزدیک (مثلا سه روز آینده) خیلی بیشتر از تغییرات روی تاریخ های دورتر می باشد، بهینه ترین حالت این است که شما تاریخ های نزدیک را زود به زودتر از تاریخ های دورتر دریافت و به روزرسانی نمایید.

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


API Endpoint

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

Request Parameters

  • Username

    string

    required

    نام کاربری

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

  • Password

    string

    required

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

  • FromDate

    string

    required

    تاریخ شروع

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

  • ToDate

    string

    required

    تاریخ پایان

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


Sample Request

{
    "Username": "testdev1",
    "Password": "25f9e794323b453885f5181f1b624d0b",
    "FromDate": "2026-05-22",
    "ToDate": "2026-05-25"
}

Response Parameters

  • CurrencyCode

    string

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

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

  • HotelList

    Complex type

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

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

    • HotelList.SepehrGlobalId

      number

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

    • HotelList.Name

      string

      نام هتل

    • HotelList.StayDateList

      Complex type

      لیست تاریخ های ورود

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

      • HotelList.StayDateList.Date

        string

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

      • HotelList.StayDateList.RoomTypeList

        Complex type

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

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

        • HotelList.StayDateList.RoomTypeList.SepehrGlobalId

          number

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

        • HotelList.StayDateList.RoomTypeList.Name

          string

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

        • HotelList.StayDateList.RoomTypeList.AdultCapacity

          number

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

        • HotelList.StayDateList.RoomTypeList.ChildCapacity

          number

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

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

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

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

          number

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

          بنابراین:

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

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

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

          number

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

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

        • HotelList.StayDateList.RoomTypeList.HasCheckinLimit

          boolean

          این فیلد مشخص می کند که این نوع اتاق در این تاریخ آیا محدودیت ورود دارد یا خیر.

          در صورتی که اتاق دارای محدودیت ورود باشد، نمی توان رزروی گرفت که تاریخ ورود آن معادل مقدار مشخص شده در فیلد Date باشد.

        • HotelList.StayDateList.RoomTypeList.HasCheckoutLimit

          boolean

          این فیلد مشخص می کند که این نوع اتاق در این تاریخ آیا محدودیت خروج دارد یا خیر.

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

        • HotelList.StayDateList.RoomTypeList.MinimumStay

          number

          این فیلد مشخص کننده حداقل مدت اقامت قابل قبول برای رزروهایی است که در این تاریخ ورود دارند.

          به عنوان مثال اگر مقدار این فیلد به عنوان حداقل مدت اقامت 3 شب باشد، نمی توان رزروی گرفت که ورود آن در تاریخ فیلد Date بوده و طول مدت اقامت یک شب یا دو شب باشد.

          در صورتی که محدودیتی وجود نداشته باشد، مقدار این فیلد صفر خواهد بود.

        • HotelList.StayDateList.RoomTypeList.MaximumStay

          number

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

          به عنوان مثال اگر مقدار این فیلد به عنوان حداکثر مدت اقامت 5 شب باشد، نمی توان رزروی گرفت که ورود آن در تاریخ فیلد Date بوده و طول مدت اقامت شش شب یا هفت شب باشد.

          در صورتی که محدودیتی وجود نداشته باشد، مقدار این فیلد صفر خواهد بود.

        • HotelList.StayDateList.RoomTypeList.BoardTypeList

          Complex type

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

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

          • HotelList.StayDateList.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.StayDateList.RoomTypeList.BoardTypeList.ExtrabedCapacity

            number

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

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

          • HotelList.StayDateList.RoomTypeList.BoardTypeList.Room_BoardPrice_TaxIncluded

            number

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

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

          • HotelList.StayDateList.RoomTypeList.BoardTypeList.Room_NetPrice_TaxIncluded

            number

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

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

          • HotelList.StayDateList.RoomTypeList.BoardTypeList.Extrabed_BoardPrice_TaxIncluded

            number

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

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

          • HotelList.StayDateList.RoomTypeList.BoardTypeList.Extrabed_NetPrice_TaxIncluded

            number

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

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

    • HotelList.AmenityList

      Complex type

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

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

      • HotelList.AmenityList.SepehrGlobalId

        number

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

      • HotelList.AmenityList.Name

        string

        عنوان خدمت

      • HotelList.AmenityList.CountingMethod

        string

        این پارامتر نحوه محاسبه هزینه خدمات را مشخص می‌کند و می‌تواند یکی از مقادیر زیر را داشته باشد:

        PerGuest

        در این حالت، هزینه خدمت صرفاً بر اساس تعداد میهمان‌ها محاسبه می‌شود. تاریخ مبنای محاسبه، تاریخ ورود (Check-in) میهمان به هتل خواهد بود.

        PerGuestPerNight

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

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

      • 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": 102,
            "Name": "هتل صحرا تستی",
            "StayDateList": [
                {
                    "Date": "2026-05-22",
                    "RoomTypeList": [
                        {
                            "SepehrGlobalId": 5009,
                            "Name": "دو تخته",
                            "AdultCapacity": 2,
                            "ChildCapacity": 1,
                            "ChildAge": 5,
                            "AvailableRoomCount": 4,
                            "HasCheckinLimit": false,
                            "HasCheckoutLimit": false,
                            "MinimumStay": 0,
                            "MaximumStay": 0,
                            "BoardTypeList": [
                                {
                                    "Code": "BB",
                                    "ExtrabedCapacity": 0,
                                    "Room_BoardPrice_TaxIncluded": 3000000.0,
                                    "Room_NetPrice_TaxIncluded": 3000000.0,
                                    "Extrabed_BoardPrice_TaxIncluded": 0.0,
                                    "Extrabed_NetPrice_TaxIncluded": 0.0
                                }
                            ]
                        }
                    ],
                    "AmenityList": []
                }
                // ... بیشتر تاریخ‌ها (2026-05-23, 2026-05-24, 2026-05-25)
            ]
        },
        {
            "SepehrGlobalId": 104,
            "Name": "هتل خارجی تستی",
            "StayDateList": [
                {
                    "Date": "2026-05-22",
                    "RoomTypeList": [
                        {
                            "SepehrGlobalId": 8235,
                            "Name": "سه تخته",
                            "AdultCapacity": 3,
                            "ChildCapacity": 2,
                            "ChildAge": 5,
                            "AvailableRoomCount": 4,
                            "HasCheckinLimit": false,
                            "HasCheckoutLimit": false,
                            "MinimumStay": 0,
                            "MaximumStay": 0,
                            "BoardTypeList": [
                                {
                                    "Code": "RO",
                                    "ExtrabedCapacity": 2,
                                    "Room_BoardPrice_TaxIncluded": 16000000.0,
                                    "Room_NetPrice_TaxIncluded": 15680000.0,
                                    "Extrabed_BoardPrice_TaxIncluded": 5000000.0,
                                    "Extrabed_NetPrice_TaxIncluded": 4750000.0
                                }
                            ]
                        },
                        {
                            "SepehrGlobalId": 8236,
                            "Name": "سوئیت چهار تخته",
                            "AdultCapacity": 4,
                            "ChildCapacity": 0,
                            "ChildAge": 5,
                            "AvailableRoomCount": 4,
                            "HasCheckinLimit": false,
                            "HasCheckoutLimit": false,
                            "MinimumStay": 0,
                            "MaximumStay": 0,
                            "BoardTypeList": [
                                {
                                    "Code": "UA",
                                    "ExtrabedCapacity": 1,
                                    "Room_BoardPrice_TaxIncluded": 56000000.0,
                                    "Room_NetPrice_TaxIncluded": 56000000.0,
                                    "Extrabed_BoardPrice_TaxIncluded": 25000000.0,
                                    "Extrabed_NetPrice_TaxIncluded": 25000000.0
                                }
                            ]
                        }
                    ],
                    "AmenityList": [
                        {
                            "SepehrGlobalId": 100,
                            "Name": "استقبال فرودگاهی",
                            "CountingMethod": "PerGuest",
                            "RateDetail": {
                                "GuestAgeRangeStart": 3,
                                "GuestAgeRangeEnd": 120,
                                "BoardPrice_TaxIncluded": 0.0,
                                "NetPrice_TaxExcluded": 0.0,
                                "NetPrice_TaxIncluded": 0.0
                            }
                        },
                        {
                            "SepehrGlobalId": 102,
                            "Name": "استخر",
                            "CountingMethod": "PerGuestPerNight",
                            "RateDetail": {
                                "GuestAgeRangeStart": 3,
                                "GuestAgeRangeEnd": 120,
                                "BoardPrice_TaxIncluded": 0.0,
                                "NetPrice_TaxExcluded": 0.0,
                                "NetPrice_TaxIncluded": 0.0
                            }
                        },
                        {
                            "SepehrGlobalId": 103,
                            "Name": "بیمه مسافرتی",
                            "CountingMethod": "PerGuest",
                            "RateDetail": {
                                "GuestAgeRangeStart": 3,
                                "GuestAgeRangeEnd": 120,
                                "BoardPrice_TaxIncluded": 50000000.0,
                                "NetPrice_TaxExcluded": 50000000.0,
                                "NetPrice_TaxIncluded": 50000000.0
                            }
                        }
                    ]
                }
                // ... بیشتر تاریخ‌ها (2026-05-23, 2026-05-24, 2026-05-25)
            ]
        },
        {
            "SepehrGlobalId": 101,
            "Name": "هتل کوهستان تستی",
            "StayDateList": [
                {
                    "Date": "2026-05-22",
                    "RoomTypeList": [
                        {
                            "SepehrGlobalId": 5001,
                            "Name": "یک تخته استاندارد",
                            "AdultCapacity": 1,
                            "ChildCapacity": 0,
                            "ChildAge": 5,
                            "AvailableRoomCount": 4,
                            "HasCheckinLimit": false,
                            "HasCheckoutLimit": false,
                            "MinimumStay": 0,
                            "MaximumStay": 0,
                            "BoardTypeList": [
                                {
                                    "Code": "BB",
                                    "ExtrabedCapacity": 1,
                                    "Room_BoardPrice_TaxIncluded": 4360000.0,
                                    "Room_NetPrice_TaxIncluded": 3924000.0,
                                    "Extrabed_BoardPrice_TaxIncluded": 1090000.0,
                                    "Extrabed_NetPrice_TaxIncluded": 981000.0
                                }
                            ]
                        }
                        // ... بیشتر نوع اتاق‌ها
                    ],
                    "AmenityList": [
                        {
                            "SepehrGlobalId": 102,
                            "Name": "استخر روباز",
                            "CountingMethod": "PerGuestPerNight",
                            "RateDetail": {
                                "GuestAgeRangeStart": 3,
                                "GuestAgeRangeEnd": 120,
                                "BoardPrice_TaxIncluded": 5450000.0,
                                "NetPrice_TaxExcluded": 5000000.0,
                                "NetPrice_TaxIncluded": 5450000.0
                            }
                        },
                        {
                            "SepehrGlobalId": 100,
                            "Name": "استقبال فرودگاهی",
                            "CountingMethod": "PerGuestPerNight",
                            "RateDetail": {
                                "GuestAgeRangeStart": 3,
                                "GuestAgeRangeEnd": 120,
                                "BoardPrice_TaxIncluded": 0.0,
                                "NetPrice_TaxExcluded": 0.0,
                                "NetPrice_TaxIncluded": 0.0
                            }
                        },
                        {
                            "SepehrGlobalId": 103,
                            "Name": "بیمه مسافرتی",
                            "CountingMethod": "PerGuest",
                            "RateDetail": {
                                "GuestAgeRangeStart": 3,
                                "GuestAgeRangeEnd": 120,
                                "BoardPrice_TaxIncluded": 8720000.0,
                                "NetPrice_TaxExcluded": 8000000.0,
                                "NetPrice_TaxIncluded": 8720000.0
                            }
                        }
                    ]
                }
                // ... بیشتر تاریخ‌ها (2026-05-23, 2026-05-24, 2026-05-25)
            ]
        }
    ]
}