/* Options: Date: 2025-12-17 05:04:11 SwiftVersion: 6.0 Version: 8.60 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://shortlinks-api.qa.platform.georiot.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: GetShortLinkMetadataRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v4/links/metadata/{baseCode}", "GET") // @DataContract public class GetShortLinkMetadataRequest : IReturn, IGetShortLinkMetadataRequest, Codable { public typealias Return = GetShortLinkMetadataResponse // @DataMember(Name="baseCode") public var baseCode:String? required public init(){} } // @DataContract public class GetShortLinkMetadataResponse : IGetShortLinkMetadataResponse, Codable { // @DataMember(Name="responseStatus") public var responseStatus:ResponseStatus? // @DataMember(Name="data") public var data:UserShortLink? required public init(){} } public protocol IGetShortLinkMetadataRequest { var baseCode:String? { get set } } // @DataContract public class UserShortLink : IUserShortLink, Codable { // @DataMember public var id:Int? // @DataMember public var destinationUrl:String? // @DataMember public var shortUrlCode:String? // @DataMember public var domain:String? // @DataMember public var linkType:String? // @DataMember public var hasOverride:Bool? // @DataMember public var productUrl:String? // @DataMember public var trackingCode:String? // @DataMember public var skipAffiliateRedirect:Bool? // @DataMember public var createdUtc:Date? // @DataMember public var updatedUtc:Date? // @DataMember public var notes:String? // @DataMember public var createdUserTime:Date? // @DataMember public var updatedUserTime:Date? // @DataMember public var tsid:UInt32? // @DataMember public var group:String? // @DataMember public var username:String? // @DataMember public var jsonMetadata:String? // @DataMember public var jsonItemMetadata:String? // @DataMember public var jsonPostProcessingRules:String? // @DataMember public var jsonOverrides:String? // @DataMember public var totalClicks:Double? // @DataMember public var advertiser:String? // @DataMember public var advertiserId:UInt32? // @DataMember public var percentChangePeriodOverPeriod:Double? // @DataMember public var previousPeriodTotalClicks:Double? // @DataMember public var isArchived:UInt32? // @DataMember public var isArchivedInt:Int? // @DataMember public var fetchMetadata:Bool? // @DataMember public var productDisplayName1:String? // @DataMember public var productDisplayName2:String? // @DataMember public var productDisplayName3:String? // @DataMember public var productArtworkThumbnailUrl:String? // @DataMember public var productArtworkThumbnailUrl100:String? // @DataMember public var advertiserIcon:String? // @DataMember public var advertiserIconCssClass:String? // @DataMember public var isGenius:Bool? // @DataMember public var advertiserIconTitle:String? // @DataMember public var trackingPixelIds:String? // @DataMember public var applePreference:UInt32? // @DataMember public var aliases:[ShortUrlAlias]? // @DataMember public var linkCreatorSetting:LinkCreatorOption? required public init(){} } public protocol IGetShortLinkMetadataResponse { var data:UserShortLink? { get set } } // @DataContract public class ShortUrlAlias : IShortUrlAlias, Codable { // @DataMember public var code:String? // @DataMember public var domain:String? // @DataMember public var baseCode:String? // @DataMember public var lastUpdatedUtc:Date? required public init(){} } public enum LinkCreatorOption : String, Codable { case NotSet case Simple case Split case Advanced case Interstitial case Other } public protocol IUserShortLink { var productUrl:String? { get set } var destinationUrl:String? { get set } var advertiser:String? { get set } var productDisplayName1:String? { get set } var productDisplayName2:String? { get set } var productArtworkThumbnailUrl:String? { get set } var productArtworkThumbnailUrl100:String? { get set } var jsonOverrides:String? { get set } var tsid:UInt32? { get set } var domain:String? { get set } var linkType:String? { get set } var shortUrlCode:String? { get set } } public protocol IShortUrlAlias { var code:String? { get set } var domain:String? { get set } var baseCode:String? { get set } var lastUpdatedUtc:Date? { get set } }