/* Options: Date: 2024-11-24 13:52:09 Version: 6.50 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://clubready.com/api/current //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: CreateClassBookingRequest.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using ClubReady.Web.Api; using ClubReady.Core.Scheduling.Models.Dto.Requests; using ClubReady.Core.Api.Models; using ClubReady.Web.Api.Scheduling.Model; namespace ClubReady.Core.Api.Models { public partial class ApiDtoBase { public virtual string ApiKey { get; set; } public virtual int? StoreId { get; set; } public virtual int? ChainId { get; set; } } public partial class CreateClassBookingResponseDto { public virtual int? BookingId { get; set; } public virtual string Message { get; set; } } } namespace ClubReady.Core.Scheduling.Models.Dto.Requests { public partial class CreateClassBookingRequestDto : ApiDtoBase { public virtual int UserId { get; set; } public virtual int ScheduleId { get; set; } public virtual bool AllowWaitList { get; set; } } } namespace ClubReady.Web.Api { public partial interface IApiKeyEndpoint { string ApiKey { get; set; } } public partial interface IRestrictedApiRequest : IApiKeyEndpoint { int? RestrictedId { get; set; } RestrictedResourceType RestrictedResourceType { get; set; } } public enum RestrictedResourceType { Store, Chain, User, Undefined, } } namespace ClubReady.Web.Api.Scheduling.Model { [Route("/scheduling/class-booking", "POST")] [Route("/v2/{ApiKey}/club/{StoreId}/booking", "POST")] [Route("/v2/{ApiKey}/club/{StoreId}/class-booking", "POST")] public partial class CreateClassBookingRequest : CreateClassBookingRequestDto, IReturn, IRestrictedApiRequest { /// ///Api Key - grants access to resources /// [ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")] public virtual string ApiKey { get; set; } /// ///UserID /// [ApiMember(DataType="string", Description="UserID", IsRequired=true, Name="UserId", ParameterType="query")] public virtual int UserId { get; set; } /// ///Store ID /// [ApiMember(DataType="integer", Description="Store ID", IsRequired=true, Name="StoreId", ParameterType="query")] public virtual int? StoreId { get; set; } /// ///Class Schedule ID /// [ApiMember(DataType="integer", Description="Class Schedule ID", IsRequired=true, Name="ScheduleId", ParameterType="query")] public virtual int ScheduleId { get; set; } /// ///Put user in wait list when possible /// [ApiMember(DataType="bool", Description="Put user in wait list when possible", Name="AllowWaitList", ParameterType="query")] public virtual bool AllowWaitList { get; set; } public virtual int? RestrictedId { get; set; } public virtual RestrictedResourceType RestrictedResourceType { get; set; } } public partial class CreateClassBookingResponse : CreateClassBookingResponseDto { public virtual int? BookingId { get; set; } public virtual string Message { get; set; } } }