/* Options: Date: 2025-09-18 03: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 { @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. Can be provided in the request body, or as a header parameter (X-Api-User) */ @DataMember @ApiMember(Description="The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User)", IsRequired=true, ParameterType="header, body") var apiUserId:String? = null /** * The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key) */ @DataMember @ApiMember(Description="The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key)", IsRequired=true, ParameterType="header, body") var apiUserKey:String? = null /** * The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id). */ @DataMember @ApiMember(Description="The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id).", ParameterType="header, body") var userId: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 /** * If this CompanyLookup is to update an existing record due to CompanyLookup Monitor changes, set the ID of the existing record here. This is the only field that needs to be set in the request. */ @ApiMember(Description="If this CompanyLookup is to update an existing record due to CompanyLookup Monitor changes, set the ID of the existing record here. This is the only field that needs to be set in the request.") var monitorCompanyLookupId: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() { } 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 companyChanges:ArrayOfCompanyChanges? = 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 ArrayOfCompanyChanges : ArrayList() { } 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 CompanyChange { var dateOfChange:Date? = null var changeEventType:String? = null var isPending:Boolean? = null var companyChangeData:ArrayOfCompanyChangeData? = 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 ArrayOfCompanyChangeData : ArrayList() { } 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 } open class CompanyChangeData { var name:String? = null var previousValue:String? = null var newValue:String? = null }