Sanctions Search API: v2

<back to all web services

AddCompanyLookup

Create 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 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 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
        ///</summary>
        [<DataMember>]
        [<ApiMember(Description="The API User ID provided by us when you signed up to use our API", 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
        ///</summary>
        [<DataMember>]
        [<ApiMember(Description="The API User Key provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body")>]
        member val ApiUserKey: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
        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 .soap11 suffix or ?format=soap11

HTTP + SOAP11

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

POST /soap11 HTTP/1.1 
Host: api.sanctionssearch.com 
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: AddCompanyLookup

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>

<AddCompanyLookup xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <Authentication>
    <ApiUserId>String</ApiUserId>
    <ApiUserKey>String</ApiUserKey>
  </Authentication>
  <Request>
    <CompanyAddress>String</CompanyAddress>
    <CompanyCountry>String</CompanyCountry>
    <CompanyLookupId>0</CompanyLookupId>
    <CompanyName>String</CompanyName>
    <CompanyRegistrationNumber>String</CompanyRegistrationNumber>
    <LinkedTo>
      <LinkedTo>
        <ClientId>0</ClientId>
        <Date>0001-01-01T00:00:00</Date>
        <Description>String</Description>
        <Id>0</Id>
        <IsArchived>false</IsArchived>
        <Name>String</Name>
        <Status>String</Status>
        <Subtype>String</Subtype>
        <Type>String</Type>
      </LinkedTo>
    </LinkedTo>
    <PerformEnhancedSearch>false</PerformEnhancedSearch>
    <SelectedLists>
      <ListId>String</ListId>
    </SelectedLists>
    <SubUserName>String</SubUserName>
  </Request>
</AddCompanyLookup>

</soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>

<AddCompanyLookupResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <Data>
    <ResponseStatus>
      <ErrorCode>String</ErrorCode>
      <Message>String</Message>
      <StackTrace>String</StackTrace>
      <Errors>
        <ResponseError>
          <ErrorCode>String</ErrorCode>
          <FieldName>String</FieldName>
          <Message>String</Message>
          <Meta xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:KeyValueOfstringstring>
              <d6p1:Key>String</d6p1:Key>
              <d6p1:Value>String</d6p1:Value>
            </d6p1:KeyValueOfstringstring>
          </Meta>
        </ResponseError>
      </Errors>
      <Meta xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringstring>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>String</d4p1:Value>
        </d4p1:KeyValueOfstringstring>
      </Meta>
    </ResponseStatus>
    <LinkedTo>
      <LinkedTo>
        <ClientId>0</ClientId>
        <Date>0001-01-01T00:00:00</Date>
        <Description>String</Description>
        <Id>0</Id>
        <IsArchived>false</IsArchived>
        <Name>String</Name>
        <Status>String</Status>
        <Subtype>String</Subtype>
        <Type>String</Type>
      </LinkedTo>
    </LinkedTo>
    <SearchRecord>
      <CompanyDirectorsAndShareholders>
        <CompanyDirectorOrShareholder>
          <AffectedByUpdate>false</AffectedByUpdate>
          <ClientInResults>false</ClientInResults>
          <ClientNotInResults>false</ClientNotInResults>
          <DateSearched>0001-01-01T00:00:00</DateSearched>
          <DateUpdated>0001-01-01T00:00:00</DateUpdated>
          <Id>0</Id>
          <IsDirector>false</IsDirector>
          <IsShareholder>false</IsShareholder>
          <NumOfResults>0</NumOfResults>
          <SearchCriteria>
            <Address>String</Address>
            <Country>String</Country>
            <DateOfBirth>String</DateOfBirth>
            <Name>String</Name>
            <Nationality>String</Nationality>
            <Reference>String</Reference>
          </SearchCriteria>
          <SearchType>String</SearchType>
        </CompanyDirectorOrShareholder>
      </CompanyDirectorsAndShareholders>
      <CompanySearchRecord>
        <AffectedByUpdate>false</AffectedByUpdate>
        <ClientInResults>false</ClientInResults>
        <ClientNotInResults>false</ClientNotInResults>
        <DateArchived>0001-01-01T00:00:00</DateArchived>
        <DateSearched>0001-01-01T00:00:00</DateSearched>
        <DateUpdated>0001-01-01T00:00:00</DateUpdated>
        <Id>0</Id>
        <IsArchived>false</IsArchived>
        <NumOfResults>0</NumOfResults>
        <SearchCriteria>
          <Address>String</Address>
          <Country>String</Country>
          <DateOfBirth>String</DateOfBirth>
          <Name>String</Name>
          <Nationality>String</Nationality>
          <Reference>String</Reference>
        </SearchCriteria>
        <SearchSources>
          <SearchSource>
            <IsAffectedByListUpdate>false</IsAffectedByListUpdate>
            <ListId>String</ListId>
            <ListName>String</ListName>
            <ListShortName>String</ListShortName>
          </SearchSource>
        </SearchSources>
        <SearchType>String</SearchType>
      </CompanySearchRecord>
      <Date>0001-01-01T00:00:00</Date>
      <EnhancedInformation>
        <Commentaries>
          <CompanyLookupEnhancedCommentary>
            <PositiveOrNegative>String</PositiveOrNegative>
            <Priority>0</Priority>
            <Text>String</Text>
          </CompanyLookupEnhancedCommentary>
        </Commentaries>
        <ContactInformation>
          <AdditionalContactInfo>
            <BusinessClassification>String</BusinessClassification>
            <ContactName>String</ContactName>
            <EmailAddress>String</EmailAddress>
            <Facebook>String</Facebook>
            <FaxNumber>String</FaxNumber>
            <GooglePlus>String</GooglePlus>
            <LinkedIn>String</LinkedIn>
            <Telephone>String</Telephone>
            <Twitter>String</Twitter>
            <WebAddress>String</WebAddress>
          </AdditionalContactInfo>
          <RegisteredAddress>
            <Address1>String</Address1>
            <Address2>String</Address2>
            <Address3>String</Address3>
            <Address4>String</Address4>
            <FullAddress>String</FullAddress>
            <PostCode>String</PostCode>
            <Telephone>String</Telephone>
          </RegisteredAddress>
          <TradingAddresses>
            <CompanyLookupEnhancedAddress>
              <Address1>String</Address1>
              <Address2>String</Address2>
              <Address3>String</Address3>
              <Address4>String</Address4>
              <FullAddress>String</FullAddress>
              <PostCode>String</PostCode>
              <Telephone>String</Telephone>
            </CompanyLookupEnhancedAddress>
          </TradingAddresses>
          <Websites>
            <CompanyLookupEnhancedWebsite>
              <Website>String</Website>
            </CompanyLookupEnhancedWebsite>
          </Websites>
        </ContactInformation>
        <CountyCourtJudgements>
          <ExactCCJs>
            <CompanyLookupEnhancedCCJ>
              <Amount>0</Amount>
              <CaseNumber>String</CaseNumber>
              <Court>String</Court>
              <Date>0001-01-01T00:00:00</Date>
              <DatePaid>String</DatePaid>
              <IncomingRecordDetails>String</IncomingRecordDetails>
              <Status>String</Status>
            </CompanyLookupEnhancedCCJ>
          </ExactCCJs>
          <PossibleCCJs>
            <CompanyLookupEnhancedCCJ>
              <Amount>0</Amount>
              <CaseNumber>String</CaseNumber>
              <Court>String</Court>
              <Date>0001-01-01T00:00:00</Date>
              <DatePaid>String</DatePaid>
              <IncomingRecordDetails>String</IncomingRecordDetails>
              <Status>String</Status>
            </CompanyLookupEnhancedCCJ>
          </PossibleCCJs>
        </CountyCourtJudgements>
        <CreditAccounts>
          <CreditLimitHistory>
            <CompanyLookupEnhancedCreditLimit>
              <Amount>0</Amount>
              <Date>0001-01-01T00:00:00</Date>
              <DateOrder>0</DateOrder>
            </CompanyLookupEnhancedCreditLimit>
          </CreditLimitHistory>
          <CreditRatingHistory>
            <CompanyLookupEnhancedCreditRating>
              <Amount>0</Amount>
              <Date>0001-01-01T00:00:00</Date>
              <DateOrder>0</DateOrder>
              <Description>String</Description>
              <ShortDescription>String</ShortDescription>
            </CompanyLookupEnhancedCreditRating>
          </CreditRatingHistory>
        </CreditAccounts>
        <Directors>
          <CurrentDirectors>
            <CompanyLookupEnhancedDirector>
              <Address>String</Address>
              <AppointmentDate>0001-01-01T00:00:00</AppointmentDate>
              <CurrentDirectorships>0</CurrentDirectorships>
              <DateOfBirth>0001-01-01T00:00:00</DateOfBirth>
              <Gender>String</Gender>
              <IdNumber>0</IdNumber>
              <Name>String</Name>
              <Position>String</Position>
              <PreviousDirectorships>0</PreviousDirectorships>
              <ResignationDate>0001-01-01T00:00:00</ResignationDate>
              <TotalDirectorships>0</TotalDirectorships>
            </CompanyLookupEnhancedDirector>
          </CurrentDirectors>
          <PreviousDirectors>
            <CompanyLookupEnhancedDirector>
              <Address>String</Address>
              <AppointmentDate>0001-01-01T00:00:00</AppointmentDate>
              <CurrentDirectorships>0</CurrentDirectorships>
              <DateOfBirth>0001-01-01T00:00:00</DateOfBirth>
              <Gender>String</Gender>
              <IdNumber>0</IdNumber>
              <Name>String</Name>
              <Position>String</Position>
              <PreviousDirectorships>0</PreviousDirectorships>
              <ResignationDate>0001-01-01T00:00:00</ResignationDate>
              <TotalDirectorships>0</TotalDirectorships>
            </CompanyLookupEnhancedDirector>
          </PreviousDirectors>
        </Directors>
        <EventHistory>
          <CompanyLookupEnhancedEvent>
            <Date>0001-01-01T00:00:00</Date>
            <Description>String</Description>
          </CompanyLookupEnhancedEvent>
        </EventHistory>
        <FinancialStatements>
          <CompanyLookupEnhancedFinancialStatement>
            <BalanceSheet>
              <BankLoansAndOverdrafts>0</BankLoansAndOverdrafts>
              <BankLoansAndOverdraftsAndLTL>0</BankLoansAndOverdraftsAndLTL>
              <Cash>0</Cash>
              <IntangibleAssets>0</IntangibleAssets>
              <MiscCurrentAssets>0</MiscCurrentAssets>
              <MiscCurrentLiabilities>0</MiscCurrentLiabilities>
              <OtherDebtors>0</OtherDebtors>
              <OtherLongTermFinance>0</OtherLongTermFinance>
              <OtherShortTermFinance>0</OtherShortTermFinance>
              <Stock>0</Stock>
              <TangibleAccounts>0</TangibleAccounts>
              <TotalCurrentAssets>0</TotalCurrentAssets>
              <TotalCurrentLiabilities>0</TotalCurrentLiabilities>
              <TotalFixedAssets>0</TotalFixedAssets>
              <TotalLongTermFinance>0</TotalLongTermFinance>
              <TradeCreditors>0</TradeCreditors>
              <TradeDebtors>0</TradeDebtors>
            </BalanceSheet>
            <CapitalAndReserves>
              <CalledUpSharedCapital>0</CalledUpSharedCapital>
              <ProfitAndLossAccountReserve>0</ProfitAndLossAccountReserve>
              <RevaluationReserve>0</RevaluationReserve>
              <ShareholderFunds>0</ShareholderFunds>
              <SundryReserves>0</SundryReserves>
            </CapitalAndReserves>
            <Cash>
              <IncreaseInCash>0</IncreaseInCash>
              <NetCashFlowBeforeFinancing>0</NetCashFlowBeforeFinancing>
              <NetCashFlowFromFinancing>0</NetCashFlowFromFinancing>
              <NetCashFlowFromOperations>0</NetCashFlowFromOperations>
            </Cash>
            <Misc>
              <AuditorComments>String</AuditorComments>
              <Auditors>String</Auditors>
              <BankBranchCode>String</BankBranchCode>
              <Bankers>String</Bankers>
              <CapitalEmployed>0</CapitalEmployed>
              <ContingentLiability>String</ContingentLiability>
              <NumberOfEmployees>0</NumberOfEmployees>
            </Misc>
            <Other>
              <NetAssets>0</NetAssets>
              <NetWorth>0</NetWorth>
              <TotalAssets>0</TotalAssets>
              <TotalLiabilities>0</TotalLiabilities>
              <WorkingCapital>0</WorkingCapital>
            </Other>
            <ProfitAndLoss>
              <AuditFees>0</AuditFees>
              <CostOfSales>0</CostOfSales>
              <Depreciation>0</Depreciation>
              <DirectorEmolument>0</DirectorEmolument>
              <DividendsPayable>0</DividendsPayable>
              <Export>0</Export>
              <GrossProfit>0</GrossProfit>
              <InterestPayments>0</InterestPayments>
              <OperatingProfit>0</OperatingProfit>
              <PretaxProfit>0</PretaxProfit>
              <ProfitAfterTax>0</ProfitAfterTax>
              <RetainedProfit>0</RetainedProfit>
              <Taxation>0</Taxation>
              <Turnover>0</Turnover>
              <WagesAndSalaries>0</WagesAndSalaries>
            </ProfitAndLoss>
            <Ratios>
              <CreditorDays>0</CreditorDays>
              <CurrentDebtRatio>0</CurrentDebtRatio>
              <CurrentRatio>0</CurrentRatio>
              <DebtorDays>0</DebtorDays>
              <Equity>0</Equity>
              <Gearing>0</Gearing>
              <LiquidityAcidTest>0</LiquidityAcidTest>
              <PreTaxProfitMargin>0</PreTaxProfitMargin>
              <ReturnOnCapitalEmployed>0</ReturnOnCapitalEmployed>
              <ReturnOnNetAssetsEmployed>0</ReturnOnNetAssetsEmployed>
              <ReturnOnTotalAssetsEmployed>0</ReturnOnTotalAssetsEmployed>
              <SalesNetworkingCapital>0</SalesNetworkingCapital>
              <StockTurnoverRatio>0</StockTurnoverRatio>
              <TotalDebtRatio>0</TotalDebtRatio>
            </Ratios>
            <SummaryConsolidatedAccount>String</SummaryConsolidatedAccount>
            <SummaryCurrency>String</SummaryCurrency>
            <SummaryNumberOfWeeks>0</SummaryNumberOfWeeks>
            <YearEndDate>0001-01-01T00:00:00</YearEndDate>
            <YearEndDateOrder>0</YearEndDateOrder>
          </CompanyLookupEnhancedFinancialStatement>
        </FinancialStatements>
        <GroupStructure>
          <ParentCompanies>
            <CompanyLookupEnhancedCompany>
              <CompanyName>String</CompanyName>
              <CompanyNumber>String</CompanyNumber>
              <Country>String</Country>
            </CompanyLookupEnhancedCompany>
          </ParentCompanies>
          <SubsidiaryCompanies>
            <CompanyLookupEnhancedCompany>
              <CompanyName>String</CompanyName>
              <CompanyNumber>String</CompanyNumber>
              <Country>String</Country>
            </CompanyLookupEnhancedCompany>
          </SubsidiaryCompanies>
        </GroupStructure>
        <PreviousNames>
          <CompanyLookupEnhancedPreviousName>
            <DateChanged>0001-01-01T00:00:00</DateChanged>
            <Name>String</Name>
          </CompanyLookupEnhancedPreviousName>
        </PreviousNames>
        <ShareStructure>
          <IssuedShareCapital>0</IssuedShareCapital>
          <Shareholders>
            <CompanyLookupEnhancedShareholder>
              <Address1>String</Address1>
              <Address2>String</Address2>
              <Address3>String</Address3>
              <Address4>String</Address4>
              <Address5>String</Address5>
              <Currency>String</Currency>
              <Forename>String</Forename>
              <Number>0</Number>
              <PostCode>String</PostCode>
              <ShareClass>String</ShareClass>
              <ShareType>String</ShareType>
              <ShareholderType>String</ShareholderType>
              <Surname>String</Surname>
              <Title>String</Title>
              <Value>0</Value>
            </CompanyLookupEnhancedShareholder>
          </Shareholders>
        </ShareStructure>
        <SicCodes>
          <CompanyLookupEnhancedSicCode>
            <SicCode2003>0</SicCode2003>
            <SicCode2003Description>String</SicCode2003Description>
            <SicCode2007>0</SicCode2007>
            <SicCode2007Description>String</SicCode2007Description>
            <Status>String</Status>
          </CompanyLookupEnhancedSicCode>
        </SicCodes>
        <Summary>
          <Address>String</Address>
          <CompanyStatus>String</CompanyStatus>
          <Country>String</Country>
          <DateOfIncorporation>String</DateOfIncorporation>
          <LatestAccounts>
            <AccountCategory>String</AccountCategory>
            <AccountLastMadeUpDate>0001-01-01T00:00:00</AccountLastMadeUpDate>
            <AccountNextDueDate>0001-01-01T00:00:00</AccountNextDueDate>
            <AccountRefDay>0</AccountRefDay>
            <AccountRefMonth>0</AccountRefMonth>
            <CreditLimit>0</CreditLimit>
            <CreditRating>0</CreditRating>
            <CreditRatingDescription>String</CreditRatingDescription>
            <Currency>String</Currency>
            <ReturnLastMadeUpDate>0001-01-01T00:00:00</ReturnLastMadeUpDate>
            <ShareholdersEquity>0</ShareholdersEquity>
            <Turnover>0</Turnover>
          </LatestAccounts>
          <Name>String</Name>
          <PrincipleActivity>String</PrincipleActivity>
          <RegistrationNumber>String</RegistrationNumber>
          <SicCode>String</SicCode>
          <SicDescription>String</SicDescription>
          <Telephone>String</Telephone>
          <TypeOfIncorporation>String</TypeOfIncorporation>
        </Summary>
      </EnhancedInformation>
      <HasCompanyDetails>false</HasCompanyDetails>
      <HasCompanyId>false</HasCompanyId>
      <HasCompletedSearches>false</HasCompletedSearches>
      <HasEnhancedInformation>false</HasEnhancedInformation>
      <HasStartedSearches>false</HasStartedSearches>
      <Id>0</Id>
      <SearchCriteria>
        <Address>String</Address>
        <Country>String</Country>
        <DateOfBirth>String</DateOfBirth>
        <Name>String</Name>
        <Nationality>String</Nationality>
        <Reference>String</Reference>
      </SearchCriteria>
      <SelectedLists>
        <ListId>String</ListId>
      </SelectedLists>
    </SearchRecord>
  </Data>
</AddCompanyLookupResponse>

</soap:Body>
</soap:Envelope>