@@ -132,6 +132,7 @@ public enum SubscriptionStatus
132132/// <param name="PropertyIds">The set of property IDs.</param>
133133/// <param name="EnvelopeSubUrls">The set of envelop sub-urls (URLs that are called by the subscription).</param>
134134/// <param name="Envelope">The envelope type (HyperGuest vs OTA)</param>
135+ /// <param name="RatePlans">The set of rate plans per property ID.</param>
135136/// <param name="Emails">The set of emails used for notification of status changes.</param>
136137/// <param name="Authentication">Any custom authentication values passed to the sub-urls.</param>
137138/// <param name="Version">The version of static-data / ARI</param>
@@ -140,9 +141,8 @@ public record CreateSubscriptionRequest(
140141 [ property: JsonPropertyName ( "method" ) ] SubscriptionMethod Method ,
141142 [ property: JsonPropertyName ( "propertyIds" ) ] int [ ] PropertyIds ,
142143 [ property: JsonPropertyName ( "envelopeSubUrls" ) ] IDictionary < CallbackUrls , string > EnvelopeSubUrls ,
143-
144-
145144 [ property: JsonPropertyName ( "envelope" ) ] SubscriptionEnvelope Envelope = SubscriptionEnvelope . HyperGuest ,
145+ [ property: JsonPropertyName ( "ratePlans" ) ] RatePlanCodeMapping [ ] ? RatePlans = null ,
146146 [ property: JsonPropertyName ( "email" ) ] string [ ] ? Emails = null ,
147147 [ property: JsonPropertyName ( "authentication" ) ] IDictionary < string , string > ? Authentication = null ,
148148 [ property: JsonPropertyName ( "version" ) ] int Version = 1 ,
@@ -164,6 +164,7 @@ public record CreateHyperGuestSubscriptionRequest(
164164 int [ ] PropertyIds ,
165165 string CallbackUrl ,
166166
167+ RatePlanCodeMapping [ ] ? RatePlans = null ,
167168 string [ ] ? Emails = null ,
168169 IDictionary < string , string > ? Authentication = null ,
169170 int Version = 1 ,
@@ -173,6 +174,7 @@ public record CreateHyperGuestSubscriptionRequest(
173174 PropertyIds ,
174175 new Dictionary < CallbackUrls , string > { { CallbackUrls . Callback , CallbackUrl } } ,
175176 SubscriptionEnvelope . HyperGuest ,
177+ RatePlans ,
176178 Emails ,
177179 Authentication ,
178180 Version ,
@@ -195,6 +197,7 @@ public record CreateOTASubscriptionRequest(
195197 string ? HotelNotificationUrl ,
196198 string ? HotelRateNotificationUrl ,
197199
200+ RatePlanCodeMapping [ ] ? RatePlans = null ,
198201 string [ ] ? Emails = null ,
199202 IDictionary < string , string > ? Authentication = null ,
200203 int Version = 1 ,
@@ -204,6 +207,7 @@ public record CreateOTASubscriptionRequest(
204207 PropertyIds ,
205208 MapUrls ( HotelNotificationUrl , HotelRateNotificationUrl ) ,
206209 SubscriptionEnvelope . HyperGuest ,
210+ RatePlans ,
207211 Emails ,
208212 Authentication ,
209213 Version ,
@@ -239,4 +243,8 @@ public enum CallbackUrls
239243 OTA_HotelAvailNotifRS ,
240244 OTA_HotelRateAmountNotifRS
241245}
246+
247+ public record RatePlanCodeMapping (
248+ [ property: JsonPropertyName ( "propertyId" ) ] int PropertyId ,
249+ [ property: JsonPropertyName ( "ratePlanCodes" ) ] string [ ] RatePlanCodes ) ;
242250#endregion
0 commit comments