/* Options: Date: 2026-10-08 22:18:35 SwiftVersion: 5.0 Version: 6.21 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://cert.cendyn.com/CenResServiceR2Test //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: MembershipPost.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/membership/{SubscriptionId}/{CendynPropertyId}", "POST") public class MembershipPost : IReturn, Codable { public typealias Return = Response public var profileContainer:ProfileContainer? public var subscriptionId:String? public var cendynPropertyId:String? required public init(){} } public class Response : Codable { public var statusCode:String? public var recordCount:Int? public var errorCount:Int? required public init(){} } public class ProfileContainer : Codable { public var echoToken:String? public var changeAction:String? public var profiles:[Profile] = [] required public init(){} } public class Profile : Codable { public var cendynPropertyID:String? public var propertyName:String? public var uniqueIDs:[UniqueIDType] = [] public var profileTypeCode:String? public var profileTypeDescription:String? public var nameCode:String? public var profileTypeCategory:String? public var jobTitle:String? public var salutation:String? public var firstName:String? public var familiarName:String? public var middleName:String? public var lastName:String? public var fullName:String? public var nameSuffix:String? public var vipid:String? public var vipCode:String? public var primaryLanguage:String? public var genderCode:String? public var dobYear:String? public var dobMonth:String? public var dobDayOfMonth:String? public var companyName:String? public var arNumber:String? public var allowMail:Bool? public var allowEMail:Bool? public var guestPriv:Bool? public var allowPhone:Bool? public var allowSMS:Bool? public var allowHistory:Bool? public var allowMarketResearch:Bool? public var allowThirdParty:Bool? public var allowLoyaltyProgram:Bool? public var creatorCode:String? public var lastUpdaterCode:String? public var dateProfileCreated:Date? public var dateProfileUpdated:Date? public var inactiveDate:Date? public var nationality:String? public var resortCode:String? public var retiredProfileId:String? public var transferredSubscriptionId:String? public var sourceName:String? public var sourceID:String? public var optOutMarketing:Bool? public var optOutDate:Date? public var profileExtension:ProfileExtension? public var addresses:[Address] = [] public var memberships:[Membership] = [] public var contactMethods:[ContactMethod] = [] public var actionComments:[ActionComment] = [] public var specialRequests:[SpecialRequest] = [] public var udfDataCollection:[UDFDataType] = [] public var lead:Lead? public var relatedTravelers:[RelatedTraveler] = [] public var documents:[Document] = [] public var vouchers:[Voucher] = [] public var profilePolicies:[ProfilePolicy] = [] required public init(){} } public class UniqueIDType : Codable { public var id:String? public var type:String? public var context:String? required public init(){} } public class ProfileExtension : Codable { public var languageCode:String? public var salutationExt:String? public var firstNameExt:String? public var familiarNameExt:String? public var middleNameExt:String? public var lastNameExt:String? public var nameSuffixExt:String? public var companyNameExt:String? public var blacklist:String? public var blackListMessage:String? public var anonymizationStatus:String? required public init(){} } public class Address : Codable { public var addressTypeCode:String? public var addressTypeDescription:String? public var addressStatus:String? public var attn:String? public var address1:String? public var address2:String? public var city:String? public var stateProvince:String? public var postalCode:String? public var countryCode:String? public var isPrimary:Bool? public var addressLanguage:String? public var addressCleansed:Bool? public var optOutMarketing:Bool? public var optOutDate:Date? required public init(){} } public class Membership : Codable { public var externalID:String? public var programCode:String? public var membershipID:String? public var membershipCategory:String? public var membershipName:String? public var membershipLevel:String? public var membershipStatus:String? public var enrollmentCode:String? public var dateMembershipStarts:Date? public var dateMembershipExpires:Date? public var totalStays:Int? public var awardCredits:Int? public var awardAvailable:Int? public var primaryAirline:Bool? public var displaySequence:Int? public var sourceName:String? public var sourceID:String? public var isActive:Bool? public var inactiveDate:Date? public var pointsIndicator:Bool? required public init(){} } public class ContactMethod : Codable { public var type:String? public var category:String? public var dataValue:String? public var extraData:String? public var optOut:Bool? public var sourceDate:Date? public var isPrimary:Bool? public var confirmation:Bool? public var inactiveDate:Date? public var optOutMarketing:Bool? public var optOutDate:Date? required public init(){} } public class ActionComment : Codable { public var externalID:String? public var commentType:String? public var commentTitle:String? public var commentClass:String? public var actionType:String? public var comment:String? public var actionDate:Date? public var inactiveDate:Date? public var guestViewable:Bool? public var creatorCode:String? public var dateCommentCreated:Date? public var resortCode:String? required public init(){} } public class SpecialRequest : Codable { public var externalID:String? public var requestType:String? public var requestCode:String? public var requestComments:String? public var resortField:String? public var actionTypeCode:String? public var actionType:String? public var inactiveDate:Date? required public init(){} } public class UDFDataType : Codable { public var cendynPropertyID:String? public var moduleName:String? public var tableName:String? public var columnName:String? public var udfValue:String? required public init(){} } public class Lead : Codable { public var fK_Reservation:String? public var externalLeadID:String? public var externalLeadSource:String? public var leadStatus:String? public var leadAcquired:Date? public var tentativeStartDate:Date? public var tentativeEndDate:Date? public var assignedAgent:String? public var assignedDate:Date? public var contactMethod:String? public var contactAgent:String? public var contactDate:Date? public var lastFollowupMethod:String? public var lastFollowupAgent:String? public var lastFollowupDate:Date? public var bookingMethod:String? public var bookingAgent:String? public var bookingDate:Date? public var reasonforStay:String? public var marketCode:String? public var campaignCode:String? public var campaignName:String? public var priceEstimate:Double? public var flaggedForAttention:Bool? required public init(){} } public class RelatedTraveler : Codable { public var cendynPropertyID:String? public var propertyName:String? public var uniqueIDs:[UniqueIDType] = [] public var salutation:String? public var firstName:String? public var familiarName:String? public var middleName:String? public var lastName:String? public var fullName:String? public var suffix:String? public var relation:String? public var isPrimary:Bool? required public init(){} } public class Document : Codable { public var documentID:String? public var documentType:String? public var documentSource:String? public var codeOnDocument:String? public var documentNotes:String? public var nameOnDocument:String? public var nationalityOnDocument:String? public var effectiveDate:Date? public var expirationDate:Date? public var issuer:String? public var issuerCountry:String? public var isPrimary:Bool? public var piI_StoredAs:String? public var inactiveDate:Date? required public init(){} } public class Voucher : Codable { public var hotelCode:String? public var voucherID:String? public var voucherID2:String? public var appliedToResort:String? public var reservationID:String? public var profileIDRecipient:String? public var subscriberIDRecipient:String? public var recipientName:String? public var emailaddress:String? public var profileIDPurchaser:String? public var purchaserName:String? public var voucherStatus:String? public var voucherType:String? public var membershipType:String? public var certCode:String? public var certNo:String? public var shortDescription:String? public var giftMessage:String? public var comments:String? public var voucherAmount:Double? public var currencyCode:String? public var issueType:String? public var dateConsumed:Date? public var expirationDate:Date? public var awardPoints:Int? public var ruleType:String? public var ruleValue:String? public var cancelAllowed:Bool? public var maxExtensions:Int? public var referenceType:String? public var referenceID:String? public var promotionCode:String? public var reservationConsumed:Bool? public var webConsumed:Bool? public var pmsConsumed:Bool? public var verifyCertNo:Bool? public var generateInLieu:Bool? public var creatorCode:String? public var lastUpdaterCode:String? public var folioID:String? public var inactiveDate:Date? required public init(){} } public class ProfilePolicy : Codable { public var policyType:String? public var attributeName:String? public var integerValue:Int? public var stringValue:String? public var effectiveDate:Date? public var expirationDate:Date? public var comments:String? public var externalID:String? public var appliesTo:String? public var appliesToDescriptor:String? required public init(){} }