Sanctions Search API: v2

<back to all web services

AddCompanyLookup

CompanyLookup
The following routes are available for this service:
POST/companylookups/createCreate a company lookup
namespace SanctionsSearch.Api2.ServiceModel.Operations.Base

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<DataContract>]
    [<AllowNullLiteral>]
    type ResponseError() = 
        [<DataMember(Order=1)>]
        member val ErrorCode:String = null with get,set

        [<DataMember(Order=2)>]
        member val FieldName:String = null with get,set

        [<DataMember(Order=3)>]
        member val Message:String = null with get,set

        [<DataMember(Order=4)>]
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set

    [<AllowNullLiteral>]
    type ArrayOfResponseError() = 
        inherit ResizeArray<ResponseError>()

    [<DataContract>]
    [<AllowNullLiteral>]
    type ResponseStatus() = 
        [<DataMember(Order=1)>]
        member val ErrorCode:String = null with get,set

        [<DataMember(Order=2)>]
        member val Message:String = null with get,set

        [<DataMember(Order=3)>]
        member val StackTrace:String = null with get,set

        [<DataMember(Order=4)>]
        member val Errors:ArrayOfResponseError = null with get,set

        [<DataMember(Order=5)>]
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set

    [<AllowNullLiteral>]
    type BaseResponse() = 
        ///<summary>
        ///The status of the response
        ///</summary>
        [<ApiMember(Description="The status of the response")>]
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type LinkedTo() = 
        member val ClientId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Id:Nullable<Int64> = new Nullable<Int64>() with get,set
        member val Type:String = null with get,set
        member val Subtype:String = null with get,set
        member val Status:String = null with get,set
        member val Description:String = null with get,set
        member val IsArchived:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val Name:String = null with get,set
        member val Date:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type ArrayOfLinkedTo() = 
        inherit ResizeArray<LinkedTo>()

    [<AllowNullLiteral>]
    type SearchCriteria() = 
        member val Name:String = null with get,set
        member val Address:String = null with get,set
        member val Country:String = null with get,set
        member val DateOfBirth:String = null with get,set
        member val Nationality:String = null with get,set
        member val Reference:String = null with get,set

    [<AllowNullLiteral>]
    type ArrayOfLists() = 
        inherit ResizeArray<String>()

    [<AllowNullLiteral>]
    type CompanyChangeData() = 
        member val Name:String = null with get,set
        member val PreviousValue:String = null with get,set
        member val NewValue:String = null with get,set

    [<AllowNullLiteral>]
    type ArrayOfCompanyChangeData() = 
        inherit ResizeArray<CompanyChangeData>()

    [<AllowNullLiteral>]
    type CompanyChange() = 
        member val DateOfChange:DateTime = new DateTime() with get,set
        member val ChangeEventType:String = null with get,set
        member val IsPending:Boolean = new Boolean() with get,set
        member val CompanyChangeData:ArrayOfCompanyChangeData = null with get,set

    [<AllowNullLiteral>]
    type ArrayOfCompanyChanges() = 
        inherit ResizeArray<CompanyChange>()

    [<AllowNullLiteral>]
    type CompanyDirectorOrShareholder() = 
        member val Id:Int64 = new Int64() with get,set
        member val SearchType:String = null with get,set
        member val DateSearched:DateTime = new DateTime() with get,set
        member val DateUpdated:DateTime = new DateTime() with get,set
        member val NumOfResults:Int32 = new Int32() with get,set
        member val ClientInResults:Boolean = new Boolean() with get,set
        member val ClientNotInResults:Boolean = new Boolean() with get,set
        member val AffectedByUpdate:Boolean = new Boolean() with get,set
        member val SearchCriteria:SearchCriteria = null with get,set
        member val IsDirector:Boolean = new Boolean() with get,set
        member val IsShareholder:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type SearchSource() = 
        member val ListId:String = null with get,set
        member val ListName:String = null with get,set
        member val ListShortName:String = null with get,set
        member val IsAffectedByListUpdate:Nullable<Boolean> = new Nullable<Boolean>() with get,set

    [<AllowNullLiteral>]
    type SearchListItem() = 
        member val Id:Int64 = new Int64() with get,set
        member val SearchType:String = null with get,set
        member val DateSearched:DateTime = new DateTime() with get,set
        member val DateUpdated:DateTime = new DateTime() with get,set
        member val DateArchived:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val IsArchived:Boolean = new Boolean() with get,set
        member val NumOfResults:Int32 = new Int32() with get,set
        member val ClientInResults:Boolean = new Boolean() with get,set
        member val ClientNotInResults:Boolean = new Boolean() with get,set
        member val AffectedByUpdate:Boolean = new Boolean() with get,set
        member val SearchCriteria:SearchCriteria = null with get,set
        member val SearchSources:ResizeArray<SearchSource> = new ResizeArray<SearchSource>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedLatestAccounts() = 
        member val Currency:String = null with get,set
        member val Turnover:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ShareholdersEquity:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CreditRating:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val CreditLimit:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val CreditRatingDescription:String = null with get,set
        member val AccountRefDay:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AccountRefMonth:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AccountNextDueDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AccountLastMadeUpDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AccountCategory:String = null with get,set
        member val ReturnLastMadeUpDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedSummary() = 
        member val Name:String = null with get,set
        member val Country:String = null with get,set
        member val RegistrationNumber:String = null with get,set
        member val DateOfIncorporation:String = null with get,set
        member val TypeOfIncorporation:String = null with get,set
        member val CompanyStatus:String = null with get,set
        member val Address:String = null with get,set
        member val Telephone:String = null with get,set
        member val SicCode:String = null with get,set
        member val SicDescription:String = null with get,set
        member val PrincipleActivity:String = null with get,set
        member val LatestAccounts:CompanyLookupEnhancedLatestAccounts = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedAddress() = 
        member val FullAddress:String = null with get,set
        member val Address1:String = null with get,set
        member val Address2:String = null with get,set
        member val Address3:String = null with get,set
        member val Address4:String = null with get,set
        member val PostCode:String = null with get,set
        member val Telephone:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedWebsite() = 
        member val Website:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedAdditionalContact() = 
        member val Telephone:String = null with get,set
        member val FaxNumber:String = null with get,set
        member val EmailAddress:String = null with get,set
        member val WebAddress:String = null with get,set
        member val Twitter:String = null with get,set
        member val Facebook:String = null with get,set
        member val GooglePlus:String = null with get,set
        member val LinkedIn:String = null with get,set
        member val ContactName:String = null with get,set
        member val BusinessClassification:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedContactInfo() = 
        member val RegisteredAddress:CompanyLookupEnhancedAddress = null with get,set
        member val TradingAddresses:ResizeArray<CompanyLookupEnhancedAddress> = new ResizeArray<CompanyLookupEnhancedAddress>() with get,set
        member val Websites:ResizeArray<CompanyLookupEnhancedWebsite> = new ResizeArray<CompanyLookupEnhancedWebsite>() with get,set
        member val AdditionalContactInfo:CompanyLookupEnhancedAdditionalContact = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedSicCode() = 
        member val SicCode2003:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SicCode2003Description:String = null with get,set
        member val SicCode2007:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SicCode2007Description:String = null with get,set
        member val Status:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedPreviousName() = 
        member val DateChanged:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Name:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedShareholder() = 
        member val Title:String = null with get,set
        member val Forename:String = null with get,set
        member val Surname:String = null with get,set
        member val Address1:String = null with get,set
        member val Address2:String = null with get,set
        member val Address3:String = null with get,set
        member val Address4:String = null with get,set
        member val Address5:String = null with get,set
        member val PostCode:String = null with get,set
        member val ShareType:String = null with get,set
        member val Number:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Value:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Currency:String = null with get,set
        member val ShareholderType:String = null with get,set
        member val ShareClass:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedShareStructure() = 
        member val IssuedShareCapital:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Shareholders:ResizeArray<CompanyLookupEnhancedShareholder> = new ResizeArray<CompanyLookupEnhancedShareholder>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedDirector() = 
        member val Name:String = null with get,set
        member val Address:String = null with get,set
        member val Gender:String = null with get,set
        member val AppointmentDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val ResignationDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val DateOfBirth:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Position:String = null with get,set
        member val IdNumber:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val CurrentDirectorships:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val PreviousDirectorships:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val TotalDirectorships:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedDirectors() = 
        member val CurrentDirectors:ResizeArray<CompanyLookupEnhancedDirector> = new ResizeArray<CompanyLookupEnhancedDirector>() with get,set
        member val PreviousDirectors:ResizeArray<CompanyLookupEnhancedDirector> = new ResizeArray<CompanyLookupEnhancedDirector>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCompany() = 
        member val Country:String = null with get,set
        member val CompanyName:String = null with get,set
        member val CompanyNumber:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedStructure() = 
        member val ParentCompanies:ResizeArray<CompanyLookupEnhancedCompany> = new ResizeArray<CompanyLookupEnhancedCompany>() with get,set
        member val SubsidiaryCompanies:ResizeArray<CompanyLookupEnhancedCompany> = new ResizeArray<CompanyLookupEnhancedCompany>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCCJ() = 
        member val Date:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Court:String = null with get,set
        member val Amount:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CaseNumber:String = null with get,set
        member val Status:String = null with get,set
        member val DatePaid:String = null with get,set
        member val IncomingRecordDetails:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCCJs() = 
        member val PossibleCCJs:ResizeArray<CompanyLookupEnhancedCCJ> = new ResizeArray<CompanyLookupEnhancedCCJ>() with get,set
        member val ExactCCJs:ResizeArray<CompanyLookupEnhancedCCJ> = new ResizeArray<CompanyLookupEnhancedCCJ>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedEvent() = 
        member val Date:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Description:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCommentary() = 
        member val Text:String = null with get,set
        member val PositiveOrNegative:String = null with get,set
        member val Priority:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCreditLimit() = 
        member val Date:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val DateOrder:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Amount:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCreditRating() = 
        member val Date:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val DateOrder:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Amount:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val ShortDescription:String = null with get,set
        member val Description:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedCreditAccount() = 
        member val CreditLimitHistory:ResizeArray<CompanyLookupEnhancedCreditLimit> = new ResizeArray<CompanyLookupEnhancedCreditLimit>() with get,set
        member val CreditRatingHistory:ResizeArray<CompanyLookupEnhancedCreditRating> = new ResizeArray<CompanyLookupEnhancedCreditRating>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialProfit() = 
        member val Turnover:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Export:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CostOfSales:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val GrossProfit:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val WagesAndSalaries:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val DirectorEmolument:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val OperatingProfit:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Depreciation:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val AuditFees:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val InterestPayments:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val PretaxProfit:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Taxation:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ProfitAfterTax:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val DividendsPayable:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val RetainedProfit:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialBalance() = 
        member val TangibleAccounts:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val IntangibleAssets:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalFixedAssets:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Stock:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TradeDebtors:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Cash:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val OtherDebtors:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val MiscCurrentAssets:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalCurrentAssets:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TradeCreditors:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val BankLoansAndOverdrafts:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val OtherShortTermFinance:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val MiscCurrentLiabilities:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalCurrentLiabilities:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val BankLoansAndOverdraftsAndLTL:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val OtherLongTermFinance:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalLongTermFinance:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialCapital() = 
        member val CalledUpSharedCapital:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ProfitAndLossAccountReserve:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val RevaluationReserve:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val SundryReserves:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ShareholderFunds:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialOther() = 
        member val NetWorth:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val NetAssets:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val WorkingCapital:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalAssets:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalLiabilities:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialCash() = 
        member val NetCashFlowFromOperations:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val NetCashFlowBeforeFinancing:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val NetCashFlowFromFinancing:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val IncreaseInCash:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialMisc() = 
        member val ContingentLiability:String = null with get,set
        member val CapitalEmployed:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val NumberOfEmployees:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Auditors:String = null with get,set
        member val AuditorComments:String = null with get,set
        member val Bankers:String = null with get,set
        member val BankBranchCode:String = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupFinancialRatios() = 
        member val PreTaxProfitMargin:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CurrentRatio:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val SalesNetworkingCapital:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Gearing:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Equity:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CreditorDays:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val DebtorDays:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val LiquidityAcidTest:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ReturnOnCapitalEmployed:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ReturnOnNetAssetsEmployed:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ReturnOnTotalAssetsEmployed:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CurrentDebtRatio:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalDebtRatio:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val StockTurnoverRatio:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhancedFinancialStatement() = 
        member val YearEndDateOrder:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val YearEndDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val SummaryNumberOfWeeks:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SummaryCurrency:String = null with get,set
        member val SummaryConsolidatedAccount:String = null with get,set
        member val ProfitAndLoss:CompanyLookupFinancialProfit = null with get,set
        member val BalanceSheet:CompanyLookupFinancialBalance = null with get,set
        member val CapitalAndReserves:CompanyLookupFinancialCapital = null with get,set
        member val Other:CompanyLookupFinancialOther = null with get,set
        member val Cash:CompanyLookupFinancialCash = null with get,set
        member val Misc:CompanyLookupFinancialMisc = null with get,set
        member val Ratios:CompanyLookupFinancialRatios = null with get,set

    [<AllowNullLiteral>]
    type CompanyLookupEnhanced() = 
        member val Summary:CompanyLookupEnhancedSummary = null with get,set
        member val ContactInformation:CompanyLookupEnhancedContactInfo = null with get,set
        member val SicCodes:ResizeArray<CompanyLookupEnhancedSicCode> = new ResizeArray<CompanyLookupEnhancedSicCode>() with get,set
        member val PreviousNames:ResizeArray<CompanyLookupEnhancedPreviousName> = new ResizeArray<CompanyLookupEnhancedPreviousName>() with get,set
        member val ShareStructure:CompanyLookupEnhancedShareStructure = null with get,set
        member val Directors:CompanyLookupEnhancedDirectors = null with get,set
        member val GroupStructure:CompanyLookupEnhancedStructure = null with get,set
        member val CountyCourtJudgements:CompanyLookupEnhancedCCJs = null with get,set
        member val EventHistory:ResizeArray<CompanyLookupEnhancedEvent> = new ResizeArray<CompanyLookupEnhancedEvent>() with get,set
        member val Commentaries:ResizeArray<CompanyLookupEnhancedCommentary> = new ResizeArray<CompanyLookupEnhancedCommentary>() with get,set
        member val CreditAccounts:CompanyLookupEnhancedCreditAccount = null with get,set
        member val FinancialStatements:ResizeArray<CompanyLookupEnhancedFinancialStatement> = new ResizeArray<CompanyLookupEnhancedFinancialStatement>() with get,set

    [<AllowNullLiteral>]
    type CompanyLookupSearchRecord() = 
        member val Id:Int32 = new Int32() with get,set
        member val SearchCriteria:SearchCriteria = null with get,set
        member val SelectedLists:ArrayOfLists = null with get,set
        member val Date:DateTime = new DateTime() with get,set
        member val HasCompanyId:Boolean = new Boolean() with get,set
        member val HasCompanyDetails:Boolean = new Boolean() with get,set
        member val HasStartedSearches:Boolean = new Boolean() with get,set
        member val HasCompletedSearches:Boolean = new Boolean() with get,set
        member val CompanyChanges:ArrayOfCompanyChanges = null with get,set
        member val CompanyDirectorsAndShareholders:ResizeArray<CompanyDirectorOrShareholder> = new ResizeArray<CompanyDirectorOrShareholder>() with get,set
        member val CompanySearchRecord:SearchListItem = null with get,set
        member val HasEnhancedInformation:Boolean = new Boolean() with get,set
        member val EnhancedInformation:CompanyLookupEnhanced = null with get,set

    [<AllowNullLiteral>]
    type AddCompanyLookupData() = 
        inherit BaseResponse()
        member val LinkedTo:ArrayOfLinkedTo = null with get,set
        member val SearchRecord:CompanyLookupSearchRecord = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type AddCompanyLookupResponse() = 
        [<DataMember>]
        member val Data:AddCompanyLookupData = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type Authentication() = 
        ///<summary>
        ///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)
        ///</summary>
        [<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")>]
        member val ApiUserId:String = null with get,set

        ///<summary>
        ///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)
        ///</summary>
        [<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")>]
        member val ApiUserKey:String = null with get,set

        ///<summary>
        ///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).
        ///</summary>
        [<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")>]
        member val UserId:String = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type BaseRequest() = 
        ///<summary>
        ///The authentication credentials
        ///</summary>
        [<DataMember>]
        [<ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body")>]
        member val Authentication:Authentication = null with get,set

    [<AllowNullLiteral>]
    type AddCompanyLookupRequest() = 
        ///<summary>
        ///If the search should be saved against a single Sub User account, specify their username here
        ///</summary>
        [<ApiMember(Description="If the search should be saved against a single Sub User account, specify their username here")>]
        member val SubUserName:String = null with get,set

        member val CompanyLookupId:Nullable<Int32> = new Nullable<Int32>() with get,set
        ///<summary>
        ///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.
        ///</summary>
        [<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.")>]
        member val MonitorCompanyLookupId:Nullable<Int32> = new Nullable<Int32>() with get,set

        member val CompanyRegistrationNumber:String = null with get,set
        member val CompanyName:String = null with get,set
        member val CompanyAddress:String = null with get,set
        member val CompanyCountry:String = null with get,set
        member val PerformEnhancedSearch:Boolean = new Boolean() with get,set
        member val SelectedLists:ArrayOfLists = null with get,set
        ///<summary>
        ///If the search should be linked to other searches, specify the them here
        ///</summary>
        [<ApiMember(Description="If the search should be linked to other searches, specify the them here")>]
        member val LinkedTo:ArrayOfLinkedTo = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type AddCompanyLookup() = 
        inherit BaseRequest()
        [<DataMember>]
        member val Request:AddCompanyLookupRequest = null with get,set

F# AddCompanyLookup DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /companylookups/create HTTP/1.1 
Host: api.sanctionssearch.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"request":{"subUserName":"String","companyLookupId":0,"monitorCompanyLookupId":0,"companyRegistrationNumber":"String","companyName":"String","companyAddress":"String","companyCountry":"String","performEnhancedSearch":false,"selectedLists":["String"],"linkedTo":[{"clientId":0,"id":0,"type":"String","subtype":"String","status":"String","description":"String","isArchived":false,"name":"String","date":"\/Date(-62135596800000-0000)\/"}]},"authentication":{"apiUserId":"String","apiUserKey":"String","userId":"String"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"data":{"linkedTo":[{"clientId":0,"id":0,"type":"String","subtype":"String","status":"String","description":"String","isArchived":false,"name":"String","date":"\/Date(-62135596800000-0000)\/"}],"searchRecord":{"id":0,"searchCriteria":{"name":"String","address":"String","country":"String","dateOfBirth":"String","nationality":"String","reference":"String"},"selectedLists":["String"],"date":"\/Date(-62135596800000-0000)\/","hasCompanyId":false,"hasCompanyDetails":false,"hasStartedSearches":false,"hasCompletedSearches":false,"companyChanges":[{"dateOfChange":"\/Date(-62135596800000-0000)\/","changeEventType":"String","isPending":false,"companyChangeData":[{"name":"String","previousValue":"String","newValue":"String"}]}],"companyDirectorsAndShareholders":[{"id":0,"searchType":"String","dateSearched":"\/Date(-62135596800000-0000)\/","dateUpdated":"\/Date(-62135596800000-0000)\/","numOfResults":0,"clientInResults":false,"clientNotInResults":false,"affectedByUpdate":false,"searchCriteria":{"name":"String","address":"String","country":"String","dateOfBirth":"String","nationality":"String","reference":"String"},"isDirector":false,"isShareholder":false}],"companySearchRecord":{"id":0,"searchType":"String","dateSearched":"\/Date(-62135596800000-0000)\/","dateUpdated":"\/Date(-62135596800000-0000)\/","dateArchived":"\/Date(-62135596800000-0000)\/","isArchived":false,"numOfResults":0,"clientInResults":false,"clientNotInResults":false,"affectedByUpdate":false,"searchCriteria":{"name":"String","address":"String","country":"String","dateOfBirth":"String","nationality":"String","reference":"String"},"searchSources":[{"listId":"String","listName":"String","listShortName":"String","isAffectedByListUpdate":false}]},"hasEnhancedInformation":false,"enhancedInformation":{"summary":{"name":"String","country":"String","registrationNumber":"String","dateOfIncorporation":"String","typeOfIncorporation":"String","companyStatus":"String","address":"String","telephone":"String","sicCode":"String","sicDescription":"String","principleActivity":"String","latestAccounts":{"currency":"String","turnover":0,"shareholdersEquity":0,"creditRating":0,"creditLimit":0,"creditRatingDescription":"String","accountRefDay":0,"accountRefMonth":0,"accountNextDueDate":"\/Date(-62135596800000-0000)\/","accountLastMadeUpDate":"\/Date(-62135596800000-0000)\/","accountCategory":"String","returnLastMadeUpDate":"\/Date(-62135596800000-0000)\/"}},"contactInformation":{"registeredAddress":{"fullAddress":"String","address1":"String","address2":"String","address3":"String","address4":"String","postCode":"String","telephone":"String"},"tradingAddresses":[{"fullAddress":"String","address1":"String","address2":"String","address3":"String","address4":"String","postCode":"String","telephone":"String"}],"websites":[{"website":"String"}],"additionalContactInfo":{"telephone":"String","faxNumber":"String","emailAddress":"String","webAddress":"String","twitter":"String","facebook":"String","googlePlus":"String","linkedIn":"String","contactName":"String","businessClassification":"String"}},"sicCodes":[{"sicCode2003":0,"sicCode2003Description":"String","sicCode2007":0,"sicCode2007Description":"String","status":"String"}],"previousNames":[{"dateChanged":"\/Date(-62135596800000-0000)\/","name":"String"}],"shareStructure":{"issuedShareCapital":0,"shareholders":[{"title":"String","forename":"String","surname":"String","address1":"String","address2":"String","address3":"String","address4":"String","address5":"String","postCode":"String","shareType":"String","number":0,"value":0,"currency":"String","shareholderType":"String","shareClass":"String"}]},"directors":{"currentDirectors":[{"name":"String","address":"String","gender":"String","appointmentDate":"\/Date(-62135596800000-0000)\/","resignationDate":"\/Date(-62135596800000-0000)\/","dateOfBirth":"\/Date(-62135596800000-0000)\/","position":"String","idNumber":0,"currentDirectorships":0,"previousDirectorships":0,"totalDirectorships":0}],"previousDirectors":[{"name":"String","address":"String","gender":"String","appointmentDate":"\/Date(-62135596800000-0000)\/","resignationDate":"\/Date(-62135596800000-0000)\/","dateOfBirth":"\/Date(-62135596800000-0000)\/","position":"String","idNumber":0,"currentDirectorships":0,"previousDirectorships":0,"totalDirectorships":0}]},"groupStructure":{"parentCompanies":[{"country":"String","companyName":"String","companyNumber":"String"}],"subsidiaryCompanies":[{"country":"String","companyName":"String","companyNumber":"String"}]},"countyCourtJudgements":{"possibleCCJs":[{"date":"\/Date(-62135596800000-0000)\/","court":"String","amount":0,"caseNumber":"String","status":"String","datePaid":"String","incomingRecordDetails":"String"}],"exactCCJs":[{"date":"\/Date(-62135596800000-0000)\/","court":"String","amount":0,"caseNumber":"String","status":"String","datePaid":"String","incomingRecordDetails":"String"}]},"eventHistory":[{"date":"\/Date(-62135596800000-0000)\/","description":"String"}],"commentaries":[{"text":"String","positiveOrNegative":"String","priority":0}],"creditAccounts":{"creditLimitHistory":[{"date":"\/Date(-62135596800000-0000)\/","dateOrder":0,"amount":0}],"creditRatingHistory":[{"date":"\/Date(-62135596800000-0000)\/","dateOrder":0,"amount":0,"shortDescription":"String","description":"String"}]},"financialStatements":[{"yearEndDateOrder":0,"yearEndDate":"\/Date(-62135596800000-0000)\/","summaryNumberOfWeeks":0,"summaryCurrency":"String","summaryConsolidatedAccount":"String","profitAndLoss":{"turnover":0,"export":0,"costOfSales":0,"grossProfit":0,"wagesAndSalaries":0,"directorEmolument":0,"operatingProfit":0,"depreciation":0,"auditFees":0,"interestPayments":0,"pretaxProfit":0,"taxation":0,"profitAfterTax":0,"dividendsPayable":0,"retainedProfit":0},"balanceSheet":{"tangibleAccounts":0,"intangibleAssets":0,"totalFixedAssets":0,"stock":0,"tradeDebtors":0,"cash":0,"otherDebtors":0,"miscCurrentAssets":0,"totalCurrentAssets":0,"tradeCreditors":0,"bankLoansAndOverdrafts":0,"otherShortTermFinance":0,"miscCurrentLiabilities":0,"totalCurrentLiabilities":0,"bankLoansAndOverdraftsAndLTL":0,"otherLongTermFinance":0,"totalLongTermFinance":0},"capitalAndReserves":{"calledUpSharedCapital":0,"profitAndLossAccountReserve":0,"revaluationReserve":0,"sundryReserves":0,"shareholderFunds":0},"other":{"netWorth":0,"netAssets":0,"workingCapital":0,"totalAssets":0,"totalLiabilities":0},"cash":{"netCashFlowFromOperations":0,"netCashFlowBeforeFinancing":0,"netCashFlowFromFinancing":0,"increaseInCash":0},"misc":{"contingentLiability":"String","capitalEmployed":0,"numberOfEmployees":0,"auditors":"String","auditorComments":"String","bankers":"String","bankBranchCode":"String"},"ratios":{"preTaxProfitMargin":0,"currentRatio":0,"salesNetworkingCapital":0,"gearing":0,"equity":0,"creditorDays":0,"debtorDays":0,"liquidityAcidTest":0,"returnOnCapitalEmployed":0,"returnOnNetAssetsEmployed":0,"returnOnTotalAssetsEmployed":0,"currentDebtRatio":0,"totalDebtRatio":0,"stockTurnoverRatio":0}}]}},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}}