/* Options: Date: 2025-03-15 20:30:23 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sanctionssearch.com/v2 //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AddCompanyLookup.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/companylookups/create", Verbs="POST") @DataContract open class AddCompanyLookup : BaseRequest(), IReturn<AddCompanyLookupResponse> { @DataMember var request:AddCompanyLookupRequest? = null companion object { private val responseType = AddCompanyLookupResponse::class.java } override fun getResponseType(): Any? = AddCompanyLookup.responseType } @DataContract open class AddCompanyLookupResponse { @DataMember @SerializedName("data") var Data:AddCompanyLookupData? = null } @DataContract open class Authentication { /** * 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") var apiUserId:String? = null /** * 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") var apiUserKey:String? = null } @DataContract open class BaseRequest : IBaseRequest { /** * The authentication credentials */ @DataMember @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body") var authentication:Authentication? = null } open interface IBaseRequest { var authentication:Authentication? } open class AddCompanyLookupRequest { /** * If the search should be saved against a single Sub User account, specify their username here */ @ApiMember(Description="If the search should be saved against a single Sub User account, specify their username here") var subUserName:String? = null var companyLookupId:Int? = null var companyRegistrationNumber:String? = null var companyName:String? = null var companyAddress:String? = null var companyCountry:String? = null var performEnhancedSearch:Boolean? = null var selectedLists:ArrayOfLists? = null /** * If the search should be linked to other searches, specify the them here */ @ApiMember(Description="If the search should be linked to other searches, specify the them here") var linkedTo:ArrayOfLinkedTo? = null } open class AddCompanyLookupData : BaseResponse(), IBaseSearchResponse { var linkedTo:ArrayOfLinkedTo? = null var searchRecord:CompanyLookupSearchRecord? = null } open class ArrayOfLinkedTo : ArrayList<LinkedTo>() { } open class ArrayOfLists : ArrayList<String>() { } open class BaseResponse : IBaseDataResponse, IHasResponseStatus { /** * The status of the response */ @ApiMember(Description="The status of the response") var responseStatus:ResponseStatus? = null } open interface IBaseDataResponse { var responseStatus:ResponseStatus? } open interface IHasResponseStatus { var responseStatus:ResponseStatus? } open interface IBaseSearchResponse : IBaseDataResponse { var linkedTo:ArrayOfLinkedTo? } open class CompanyLookupSearchRecord { var id:Int? = null var searchCriteria:SearchCriteria? = null var selectedLists:ArrayOfLists? = null var date:Date? = null var hasCompanyId:Boolean? = null var hasCompanyDetails:Boolean? = null var hasStartedSearches:Boolean? = null var hasCompletedSearches:Boolean? = null var companyDirectorsAndShareholders:ArrayList<CompanyDirectorOrShareholder> = ArrayList<CompanyDirectorOrShareholder>() var companySearchRecord:SearchListItem? = null var hasEnhancedInformation:Boolean? = null var enhancedInformation:CompanyLookupEnhanced? = null } open class LinkedTo { var clientId:Int? = null var id:Long? = null @SerializedName("type") var Type:String? = null var subtype:String? = null var status:String? = null var description:String? = null var isArchived:Boolean? = null var name:String? = null var date:Date? = null } open class ArrayOfResponseError : ArrayList<ResponseError>() { } open class SearchCriteria { var name:String? = null var address:String? = null var country:String? = null var dateOfBirth:String? = null var nationality:String? = null var reference:String? = null } open class CompanyDirectorOrShareholder { var id:Long? = null var searchType:String? = null var dateSearched:Date? = null var dateUpdated:Date? = null var numOfResults:Int? = null var clientInResults:Boolean? = null var clientNotInResults:Boolean? = null var affectedByUpdate:Boolean? = null var searchCriteria:SearchCriteria? = null var isDirector:Boolean? = null var isShareholder:Boolean? = null } open class SearchListItem { var id:Long? = null var searchType:String? = null var dateSearched:Date? = null var dateUpdated:Date? = null var dateArchived:Date? = null var isArchived:Boolean? = null var numOfResults:Int? = null var clientInResults:Boolean? = null var clientNotInResults:Boolean? = null var affectedByUpdate:Boolean? = null var searchCriteria:SearchCriteria? = null var searchSources:ArrayList<SearchSource> = ArrayList<SearchSource>() } open class CompanyLookupEnhanced { var summary:CompanyLookupEnhancedSummary? = null var contactInformation:CompanyLookupEnhancedContactInfo? = null var sicCodes:ArrayList<CompanyLookupEnhancedSicCode> = ArrayList<CompanyLookupEnhancedSicCode>() var previousNames:ArrayList<CompanyLookupEnhancedPreviousName> = ArrayList<CompanyLookupEnhancedPreviousName>() var shareStructure:CompanyLookupEnhancedShareStructure? = null var directors:CompanyLookupEnhancedDirectors? = null var groupStructure:CompanyLookupEnhancedStructure? = null var countyCourtJudgements:CompanyLookupEnhancedCCJs? = null var eventHistory:ArrayList<CompanyLookupEnhancedEvent> = ArrayList<CompanyLookupEnhancedEvent>() var commentaries:ArrayList<CompanyLookupEnhancedCommentary> = ArrayList<CompanyLookupEnhancedCommentary>() var creditAccounts:CompanyLookupEnhancedCreditAccount? = null var financialStatements:ArrayList<CompanyLookupEnhancedFinancialStatement> = ArrayList<CompanyLookupEnhancedFinancialStatement>() } open class SearchSource { var listId:String? = null var listName:String? = null var listShortName:String? = null var isAffectedByListUpdate:Boolean? = null } open class CompanyLookupEnhancedSummary { var name:String? = null var country:String? = null var registrationNumber:String? = null var dateOfIncorporation:String? = null var typeOfIncorporation:String? = null var companyStatus:String? = null var address:String? = null var telephone:String? = null var sicCode:String? = null var sicDescription:String? = null var principleActivity:String? = null var latestAccounts:CompanyLookupEnhancedLatestAccounts? = null } open class CompanyLookupEnhancedContactInfo { var registeredAddress:CompanyLookupEnhancedAddress? = null var tradingAddresses:ArrayList<CompanyLookupEnhancedAddress> = ArrayList<CompanyLookupEnhancedAddress>() var websites:ArrayList<CompanyLookupEnhancedWebsite> = ArrayList<CompanyLookupEnhancedWebsite>() var additionalContactInfo:CompanyLookupEnhancedAdditionalContact? = null } open class CompanyLookupEnhancedSicCode { var sicCode2003:Int? = null var sicCode2003Description:String? = null var sicCode2007:Int? = null var sicCode2007Description:String? = null var status:String? = null } open class CompanyLookupEnhancedPreviousName { var dateChanged:Date? = null var name:String? = null } open class CompanyLookupEnhancedShareStructure { var issuedShareCapital:BigDecimal? = null var shareholders:ArrayList<CompanyLookupEnhancedShareholder> = ArrayList<CompanyLookupEnhancedShareholder>() } open class CompanyLookupEnhancedDirectors { var currentDirectors:ArrayList<CompanyLookupEnhancedDirector> = ArrayList<CompanyLookupEnhancedDirector>() var previousDirectors:ArrayList<CompanyLookupEnhancedDirector> = ArrayList<CompanyLookupEnhancedDirector>() } open class CompanyLookupEnhancedStructure { var parentCompanies:ArrayList<CompanyLookupEnhancedCompany> = ArrayList<CompanyLookupEnhancedCompany>() var subsidiaryCompanies:ArrayList<CompanyLookupEnhancedCompany> = ArrayList<CompanyLookupEnhancedCompany>() } open class CompanyLookupEnhancedCCJs { var possibleCCJs:ArrayList<CompanyLookupEnhancedCCJ> = ArrayList<CompanyLookupEnhancedCCJ>() var exactCCJs:ArrayList<CompanyLookupEnhancedCCJ> = ArrayList<CompanyLookupEnhancedCCJ>() } open class CompanyLookupEnhancedEvent { var date:Date? = null var description:String? = null } open class CompanyLookupEnhancedCommentary { var text:String? = null var positiveOrNegative:String? = null var priority:Int? = null } open class CompanyLookupEnhancedCreditAccount { var creditLimitHistory:ArrayList<CompanyLookupEnhancedCreditLimit> = ArrayList<CompanyLookupEnhancedCreditLimit>() var creditRatingHistory:ArrayList<CompanyLookupEnhancedCreditRating> = ArrayList<CompanyLookupEnhancedCreditRating>() } open class CompanyLookupEnhancedFinancialStatement { var yearEndDateOrder:Int? = null var yearEndDate:Date? = null var summaryNumberOfWeeks:Int? = null var summaryCurrency:String? = null var summaryConsolidatedAccount:String? = null var profitAndLoss:CompanyLookupFinancialProfit? = null var balanceSheet:CompanyLookupFinancialBalance? = null var capitalAndReserves:CompanyLookupFinancialCapital? = null var other:CompanyLookupFinancialOther? = null var cash:CompanyLookupFinancialCash? = null var misc:CompanyLookupFinancialMisc? = null var ratios:CompanyLookupFinancialRatios? = null } open class CompanyLookupEnhancedLatestAccounts { var currency:String? = null var turnover:BigDecimal? = null var shareholdersEquity:BigDecimal? = null var creditRating:Int? = null var creditLimit:Int? = null var creditRatingDescription:String? = null var accountRefDay:Int? = null var accountRefMonth:Int? = null var accountNextDueDate:Date? = null var accountLastMadeUpDate:Date? = null var accountCategory:String? = null var returnLastMadeUpDate:Date? = null } open class CompanyLookupEnhancedAddress { var fullAddress:String? = null var address1:String? = null var address2:String? = null var address3:String? = null var address4:String? = null var postCode:String? = null var telephone:String? = null } open class CompanyLookupEnhancedWebsite { var website:String? = null } open class CompanyLookupEnhancedAdditionalContact { var telephone:String? = null var faxNumber:String? = null var emailAddress:String? = null var webAddress:String? = null var twitter:String? = null var facebook:String? = null var googlePlus:String? = null var linkedIn:String? = null var contactName:String? = null var businessClassification:String? = null } open class CompanyLookupEnhancedShareholder { var title:String? = null var forename:String? = null var surname:String? = null var address1:String? = null var address2:String? = null var address3:String? = null var address4:String? = null var address5:String? = null var postCode:String? = null var shareType:String? = null var number:BigDecimal? = null var value:BigDecimal? = null var currency:String? = null var shareholderType:String? = null var shareClass:String? = null } open class CompanyLookupEnhancedDirector { var name:String? = null var address:String? = null var gender:String? = null var appointmentDate:Date? = null var resignationDate:Date? = null var dateOfBirth:Date? = null var position:String? = null var idNumber:Int? = null var currentDirectorships:Int? = null var previousDirectorships:Int? = null var totalDirectorships:Int? = null } open class CompanyLookupEnhancedCompany { var country:String? = null var companyName:String? = null var companyNumber:String? = null } open class CompanyLookupEnhancedCCJ { var date:Date? = null var court:String? = null var amount:BigDecimal? = null var caseNumber:String? = null var status:String? = null var datePaid:String? = null var incomingRecordDetails:String? = null } open class CompanyLookupEnhancedCreditLimit { var date:Date? = null var dateOrder:Int? = null var amount:Int? = null } open class CompanyLookupEnhancedCreditRating { var date:Date? = null var dateOrder:Int? = null var amount:Int? = null var shortDescription:String? = null var description:String? = null } open class CompanyLookupFinancialProfit { var turnover:BigDecimal? = null var export:BigDecimal? = null var costOfSales:BigDecimal? = null var grossProfit:BigDecimal? = null var wagesAndSalaries:BigDecimal? = null var directorEmolument:BigDecimal? = null var operatingProfit:BigDecimal? = null var depreciation:BigDecimal? = null var auditFees:BigDecimal? = null var interestPayments:BigDecimal? = null var pretaxProfit:BigDecimal? = null var taxation:BigDecimal? = null var profitAfterTax:BigDecimal? = null var dividendsPayable:BigDecimal? = null var retainedProfit:BigDecimal? = null } open class CompanyLookupFinancialBalance { var tangibleAccounts:BigDecimal? = null var intangibleAssets:BigDecimal? = null var totalFixedAssets:BigDecimal? = null var stock:BigDecimal? = null var tradeDebtors:BigDecimal? = null var cash:BigDecimal? = null var otherDebtors:BigDecimal? = null var miscCurrentAssets:BigDecimal? = null var totalCurrentAssets:BigDecimal? = null var tradeCreditors:BigDecimal? = null var bankLoansAndOverdrafts:BigDecimal? = null var otherShortTermFinance:BigDecimal? = null var miscCurrentLiabilities:BigDecimal? = null var totalCurrentLiabilities:BigDecimal? = null var bankLoansAndOverdraftsAndLTL:BigDecimal? = null var otherLongTermFinance:BigDecimal? = null var totalLongTermFinance:BigDecimal? = null } open class CompanyLookupFinancialCapital { var calledUpSharedCapital:BigDecimal? = null var profitAndLossAccountReserve:BigDecimal? = null var revaluationReserve:BigDecimal? = null var sundryReserves:BigDecimal? = null var shareholderFunds:BigDecimal? = null } open class CompanyLookupFinancialOther { var netWorth:BigDecimal? = null var netAssets:BigDecimal? = null var workingCapital:BigDecimal? = null var totalAssets:BigDecimal? = null var totalLiabilities:BigDecimal? = null } open class CompanyLookupFinancialCash { var netCashFlowFromOperations:BigDecimal? = null var netCashFlowBeforeFinancing:BigDecimal? = null var netCashFlowFromFinancing:BigDecimal? = null var increaseInCash:BigDecimal? = null } open class CompanyLookupFinancialMisc { var contingentLiability:String? = null var capitalEmployed:BigDecimal? = null var numberOfEmployees:BigDecimal? = null var auditors:String? = null var auditorComments:String? = null var bankers:String? = null var bankBranchCode:String? = null } open class CompanyLookupFinancialRatios { var preTaxProfitMargin:BigDecimal? = null var currentRatio:BigDecimal? = null var salesNetworkingCapital:BigDecimal? = null var gearing:BigDecimal? = null var equity:BigDecimal? = null var creditorDays:BigDecimal? = null var debtorDays:BigDecimal? = null var liquidityAcidTest:BigDecimal? = null var returnOnCapitalEmployed:BigDecimal? = null var returnOnNetAssetsEmployed:BigDecimal? = null var returnOnTotalAssetsEmployed:BigDecimal? = null var currentDebtRatio:BigDecimal? = null var totalDebtRatio:BigDecimal? = null var stockTurnoverRatio:BigDecimal? = null }