/* Options: Date: 2025-12-06 05:24:26 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: IncomingSchedulerSMSRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v1/sms/reply", "POST,OPTIONS") public class IncomingSchedulerSMSRequest : SmsRequest { required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } public class SmsRequest : TwilioRequest { public var messageSid:String? public var smsSid:String? public var body:String? public var messageStatus:String? public var optOutType:String? public var messagingServiceSid:String? public var numMedia:Int? public var referralNumMedia:Int? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case messageSid case smsSid case body case messageStatus case optOutType case messagingServiceSid case numMedia case referralNumMedia } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) messageSid = try container.decodeIfPresent(String.self, forKey: .messageSid) smsSid = try container.decodeIfPresent(String.self, forKey: .smsSid) body = try container.decodeIfPresent(String.self, forKey: .body) messageStatus = try container.decodeIfPresent(String.self, forKey: .messageStatus) optOutType = try container.decodeIfPresent(String.self, forKey: .optOutType) messagingServiceSid = try container.decodeIfPresent(String.self, forKey: .messagingServiceSid) numMedia = try container.decodeIfPresent(Int.self, forKey: .numMedia) referralNumMedia = try container.decodeIfPresent(Int.self, forKey: .referralNumMedia) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if messageSid != nil { try container.encode(messageSid, forKey: .messageSid) } if smsSid != nil { try container.encode(smsSid, forKey: .smsSid) } if body != nil { try container.encode(body, forKey: .body) } if messageStatus != nil { try container.encode(messageStatus, forKey: .messageStatus) } if optOutType != nil { try container.encode(optOutType, forKey: .optOutType) } if messagingServiceSid != nil { try container.encode(messagingServiceSid, forKey: .messagingServiceSid) } if numMedia != nil { try container.encode(numMedia, forKey: .numMedia) } if referralNumMedia != nil { try container.encode(referralNumMedia, forKey: .referralNumMedia) } } } public class TwilioRequest : Codable { public var accountSid:String? public var from:String? public var to:String? public var fromCity:String? public var fromState:String? public var fromZip:String? public var fromCountry:String? public var toCity:String? public var toState:String? public var toZip:String? public var toCountry:String? required public init(){} }