/* Options: Date: 2025-03-15 03:03:59 SwiftVersion: 5.0 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sanctionssearch.com/v2 //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: GetPdfs.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/pdfs/list", "POST") // @DataContract public class GetPdfs : BaseRequest, IReturn { public typealias Return = GetPdfsResponse /** * The request data */ // @DataMember // @ApiMember(Description="The request data", ParameterType="body") public var request:GetPdfsRequest required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case request } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) request = try container.decodeIfPresent(GetPdfsRequest.self, forKey: .request) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if request != nil { try container.encode(request, forKey: .request) } } } // @DataContract public class GetPdfsResponse : Codable { /** * The response data */ // @DataMember // @ApiMember(Description="The response data") public var data:GetPdfsData required public init(){} } // @DataContract public class Authentication : Codable { /** * The API User ID provided by us when you signed up to use our API */ // @DataMember // @ApiMember(Description="The API User ID provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body") public var apiUserId:String /** * The API User Key provided by us when you signed up to use our API */ // @DataMember // @ApiMember(Description="The API User Key provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body") public var apiUserKey:String required public init(){} } // @DataContract public class BaseRequest : IBaseRequest, Codable { /** * The authentication credentials */ // @DataMember // @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") public var authentication:Authentication required public init(){} } public protocol IBaseRequest { var authentication:Authentication { get set } } public class GetPdfsRequest : Codable { /** * If the saved documents are kept within a single Sub User account, specify their username here */ // @ApiMember(Description="If the saved documents are kept within a single Sub User account, specify their username here") public var subUserName:String required public init(){} } public class GetPdfsData : BaseResponse { /** * List of Documents, but not including the file data */ // @ApiMember(Description="List of Documents, but not including the file data") public var documents:ArrayOfPdfDocument required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case documents } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) documents = try container.decodeIfPresent(ArrayOfPdfDocument.self, forKey: .documents) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if documents != nil { try container.encode(documents, forKey: .documents) } } } public class BaseResponse : IBaseDataResponse, IHasResponseStatus, Codable { /** * The status of the response */ // @ApiMember(Description="The status of the response") public var responseStatus:ResponseStatus required public init(){} } public protocol IBaseDataResponse { var responseStatus:ResponseStatus { get set } } public protocol IHasResponseStatus { var responseStatus:ResponseStatus { get set } } public class ArrayOfPdfDocument : List { 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 ArrayOfResponseError : List { 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 PdfDocument : Codable { /** * The ID of the saved document */ // @ApiMember(Description="The ID of the saved document") public var id:Int /** * Is the document ready to download */ // @ApiMember(Description="Is the document ready to download") public var isReady:Bool /** * The name of the saved document */ // @ApiMember(Description="The name of the saved document") public var name:String /** * The file name (including extension) of the saved document */ // @ApiMember(Description="The file name (including extension) of the saved document") public var fileName:String /** * The type of saved document (Human readable, pep, sanctions, validid, companylookup, etc.) */ // @ApiMember(Description="The type of saved document (Human readable, pep, sanctions, validid, companylookup, etc.)") public var type:String /** * If this document is a Saved Sanctions Search, the ID of the search it relates to */ // @ApiMember(Description="If this document is a Saved Sanctions Search, the ID of the search it relates to") public var sanctionsSearchId:Int? /** * If this document is a Saved PEP Search, the ID of the search it relates to */ // @ApiMember(Description="If this document is a Saved PEP Search, the ID of the search it relates to") public var pepSearchId:Int? /** * If this document is a Saved ValidID Search, the ID of the search it relates to */ // @ApiMember(Description="If this document is a Saved ValidID Search, the ID of the search it relates to") public var validIdSearchId:Int? /** * If this document is a Saved CompanyLookup Search, the ID of the search it relates to */ // @ApiMember(Description="If this document is a Saved CompanyLookup Search, the ID of the search it relates to") public var companyLookupSearchId:Int? /** * The date the saved document was created/requested */ // @ApiMember(Description="The date the saved document was created/requested") public var dateCreated:Date /** * The date the saved document will be no longer available. You can request a new document using the SaveSearch, SavePepSearch, etc. methods */ // @ApiMember(Description="The date the saved document will be no longer available. You can request a new document using the SaveSearch, SavePepSearch, etc. methods") public var dateExpires:Date required public init(){} }