/* Options: Date: 2025-03-15 05:55:19 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: GetCompanyLookup.* //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/get", Verbs="POST") @DataContract open class GetCompanyLookup : BaseRequest(), IReturn { @DataMember var request:GetCompanyLookupRequest? = null companion object { private val responseType = GetCompanyLookupResponse::class.java } override fun getResponseType(): Any? = GetCompanyLookup.responseType } @DataContract open class GetCompanyLookupResponse { @DataMember @SerializedName("data") var Data:GetCompanyLookupData? = 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 GetCompanyLookupRequest { /** * If the search is being accessed by a sub user, specify their username here to validate they have permissions to view it */ @ApiMember(Description="If the search is being accessed by a sub user, specify their username here to validate they have permissions to view it") var subUserName:String? = null var id:Int? = null } open class GetCompanyLookupData : BaseResponse(), IBaseSearchResponse { var linkedTo:ArrayOfLinkedTo? = null var searchRecord:CompanyLookupSearchRecord? = null } open class ArrayOfLinkedTo : ArrayList() { } open class ArrayOfLists : ArrayList() { } 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 = ArrayList() 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() { } 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 = ArrayList() } open class CompanyLookupEnhanced { var summary:CompanyLookupEnhancedSummary? = null var contactInformation:CompanyLookupEnhancedContactInfo? = null var sicCodes:ArrayList = ArrayList() var previousNames:ArrayList = ArrayList() var shareStructure:CompanyLookupEnhancedShareStructure? = null var directors:CompanyLookupEnhancedDirectors? = null var groupStructure:CompanyLookupEnhancedStructure? = null var countyCourtJudgements:CompanyLookupEnhancedCCJs? = null var eventHistory:ArrayList = ArrayList() var commentaries:ArrayList = ArrayList() var creditAccounts:CompanyLookupEnhancedCreditAccount? = null var financialStatements:ArrayList = ArrayList() } 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 = ArrayList() var websites:ArrayList = ArrayList() 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 = ArrayList() } open class CompanyLookupEnhancedDirectors { var currentDirectors:ArrayList = ArrayList() var previousDirectors:ArrayList = ArrayList() } open class CompanyLookupEnhancedStructure { var parentCompanies:ArrayList = ArrayList() var subsidiaryCompanies:ArrayList = ArrayList() } open class CompanyLookupEnhancedCCJs { var possibleCCJs:ArrayList = ArrayList() var exactCCJs:ArrayList = ArrayList() } 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 = ArrayList() var creditRatingHistory:ArrayList = ArrayList() } 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 }