/* Options: Date: 2025-06-13 17:47:44 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sanctionssearch.com/v2 //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: GetSearch.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using SanctionsSearch.Api2.ServiceModel.Types; using SanctionsSearch.Api2.ServiceModel.Operations.Base; using SanctionsSearch.Api2.ServiceModel.Operations.Searches; namespace SanctionsSearch.Api2.ServiceModel.Operations.Base { public partial class ArrayOfResponseError : List<ResponseError> { } [DataContract] public partial class BaseRequest : IBaseRequest { ///<summary> ///The authentication credentials ///</summary> [DataMember] [ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body")] public virtual Authentication Authentication { get; set; } } public partial class BaseResponse : IBaseDataResponse, IHasResponseStatus { ///<summary> ///The status of the response ///</summary> [ApiMember(Description="The status of the response")] public virtual ResponseStatus ResponseStatus { get; set; } } public partial interface IBaseDataResponse { ResponseStatus ResponseStatus { get; set; } } public partial interface IBaseRequest { Authentication Authentication { get; set; } } public partial interface IBaseSearchResponse : IBaseDataResponse { ArrayOfLinkedTo LinkedTo { get; set; } } public partial interface IHasResponseStatus { ResponseStatus ResponseStatus { get; set; } } [DataContract] public partial class ResponseError { public ResponseError() { Meta = new Dictionary<string, string>{}; } [DataMember(Order=1)] public virtual string ErrorCode { get; set; } [DataMember(Order=2)] public virtual string FieldName { get; set; } [DataMember(Order=3)] public virtual string Message { get; set; } [DataMember(Order=4)] public virtual Dictionary<string, string> Meta { get; set; } } [DataContract] public partial class ResponseStatus { public ResponseStatus() { Meta = new Dictionary<string, string>{}; } [DataMember(Order=1)] public virtual string ErrorCode { get; set; } [DataMember(Order=2)] public virtual string Message { get; set; } [DataMember(Order=3)] public virtual string StackTrace { get; set; } [DataMember(Order=4)] public virtual ArrayOfResponseError Errors { get; set; } [DataMember(Order=5)] public virtual Dictionary<string, string> Meta { get; set; } } } namespace SanctionsSearch.Api2.ServiceModel.Operations.Searches { [Route("/sanctions/get", "POST")] [DataContract] public partial class GetSearch : BaseRequest, IReturn<GetSearchResponse> { [DataMember] public virtual GetSearchRequest Request { get; set; } } public partial class GetSearchData : BaseResponse, IBaseSearchResponse { public virtual ArrayOfLinkedTo LinkedTo { get; set; } public virtual SearchRecord SearchRecord { get; set; } } public partial class GetSearchRequest { ///<summary> ///If the search is being accessed by a sub user, specify their username here to validate they have permissions to view it ///</summary> [ApiMember(Description="If the search is being accessed by a sub user, specify their username here to validate they have permissions to view it")] public virtual string SubUserName { get; set; } ///<summary> ///If set to true, the response will exclude resolved search results, it will only include unresolved results ///</summary> [ApiMember(Description="If set to true, the response will exclude resolved search results, it will only include unresolved results")] public virtual bool OnlyShowUnresolvedResults { get; set; } public virtual long Id { get; set; } } [DataContract] public partial class GetSearchResponse { [DataMember] public virtual GetSearchData Data { get; set; } } } namespace SanctionsSearch.Api2.ServiceModel.Types { public partial class ArrayOfLinkedTo : List<LinkedTo> { } public partial class ArrayOfSearchResultEntries : List<SearchResultEntry> { } [DataContract] public partial class 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")] public virtual string ApiUserId { 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")] public virtual string ApiUserKey { 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")] public virtual string UserId { get; set; } } public partial class LinkedTo { public virtual int? ClientId { get; set; } public virtual long? Id { get; set; } public virtual string Type { get; set; } public virtual string Subtype { get; set; } public virtual string Status { get; set; } public virtual string Description { get; set; } public virtual bool? IsArchived { get; set; } public virtual string Name { get; set; } public virtual DateTime? Date { get; set; } } public partial class SearchCriteria { public virtual string Name { get; set; } public virtual string Address { get; set; } public virtual string Country { get; set; } public virtual string DateOfBirth { get; set; } public virtual string Nationality { get; set; } public virtual string Reference { get; set; } } public partial class SearchRecord { public SearchRecord() { SearchSources = new List<SearchSource>{}; } public virtual long Id { get; set; } public virtual string SearchType { get; set; } public virtual DateTime DateSearched { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual DateTime? DateArchived { get; set; } public virtual bool IsArchived { get; set; } public virtual int NumOfResults { get; set; } public virtual bool ClientInResults { get; set; } public virtual bool ClientNotInResults { get; set; } public virtual bool AffectedByUpdate { get; set; } public virtual SearchCriteria SearchCriteria { get; set; } public virtual SearchResults SearchResults { get; set; } public virtual List<SearchSource> SearchSources { get; set; } public virtual ArrayOfSearchResultEntries ListSearchResults { get; set; } } public partial class SearchResultAddress { public virtual long SearchResultAddressId { get; set; } public virtual string Type { get; set; } public virtual string Address1 { get; set; } public virtual string Address2 { get; set; } public virtual string Address3 { get; set; } public virtual string City { get; set; } public virtual string County { get; set; } public virtual string PostCode { get; set; } public virtual string Country { get; set; } } public partial class SearchResultCanadianJustice { public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual string Name { get; set; } public virtual string DateOfBirth { get; set; } public virtual string Country { get; set; } public virtual int RefId { get; set; } } public partial class SearchResultCanadianSema { public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual string Name { get; set; } public virtual string DateOfBirth { get; set; } public virtual string Country { get; set; } public virtual string Schedule { get; set; } public virtual string Item { get; set; } } public partial class SearchResultDateOfBirth { public virtual long SearchResultDateOfBirthId { get; set; } public virtual string DateOfBirth { get; set; } public virtual short? Year { get; set; } public virtual byte? Month { get; set; } public virtual byte? Day { get; set; } public virtual string Type { get; set; } } public partial class SearchResultDfat { public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual string FullName { get; set; } public virtual string Address { get; set; } public virtual string DateOfBirth { get; set; } public virtual string PlaceOfBirth { get; set; } public virtual string Nationality { get; set; } } public partial class SearchResultEntry { public SearchResultEntry() { Addresses = new List<SearchResultAddress>{}; DatesOfBirth = new List<SearchResultDateOfBirth>{}; Names = new List<SearchResultName>{}; Nationalities = new List<SearchResultNationality>{}; PlacesOfBirth = new List<SearchResultPlaceOfBirth>{}; Remarks = new List<SearchResultRemark>{}; } public virtual long SearchResultId { get; set; } public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime? DateUpdated { get; set; } public virtual string SanctionsListId { get; set; } public virtual string SanctionsListName { get; set; } public virtual List<SearchResultAddress> Addresses { get; set; } public virtual List<SearchResultDateOfBirth> DatesOfBirth { get; set; } public virtual List<SearchResultName> Names { get; set; } public virtual List<SearchResultNationality> Nationalities { get; set; } public virtual List<SearchResultPlaceOfBirth> PlacesOfBirth { get; set; } public virtual List<SearchResultRemark> Remarks { get; set; } } public partial class SearchResultEu { public SearchResultEu() { Addresses = new List<SearchResultEuAddress>{}; Births = new List<SearchResultEuBirth>{}; Citizenships = new List<SearchResultOfacEuCitizenship>{}; Names = new List<SearchResultEuName>{}; Passports = new List<SearchResultEuPassport>{}; } public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual List<SearchResultEuAddress> Addresses { get; set; } public virtual List<SearchResultEuBirth> Births { get; set; } public virtual List<SearchResultOfacEuCitizenship> Citizenships { get; set; } public virtual List<SearchResultEuName> Names { get; set; } public virtual List<SearchResultEuPassport> Passports { get; set; } } public partial class SearchResultEuAddress { public virtual string Street { get; set; } public virtual string City { get; set; } public virtual string Country { get; set; } public virtual string PostCode { get; set; } public virtual string Other { get; set; } } public partial class SearchResultEuBirth { public virtual string Date { get; set; } public virtual string Place { get; set; } public virtual string Country { get; set; } } public partial class SearchResultEuName { public virtual string FullName { get; set; } public virtual string Gender { get; set; } } public partial class SearchResultEuPassport { public virtual string Number { get; set; } public virtual string Country { get; set; } } public partial class SearchResultHmTreasury { public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateListed { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual string Name1 { get; set; } public virtual string Name2 { get; set; } public virtual string Name3 { get; set; } public virtual string Name4 { get; set; } public virtual string Name5 { get; set; } public virtual string Name6 { get; set; } public virtual string DateOfBirth { get; set; } public virtual string CountryOfBirth { get; set; } public virtual string Nationality { get; set; } public virtual string Address1 { get; set; } public virtual string Address2 { get; set; } public virtual string Address3 { get; set; } public virtual string Address4 { get; set; } public virtual string Address5 { get; set; } public virtual string Address6 { get; set; } public virtual string PostCode { get; set; } public virtual string Country { get; set; } } public partial class SearchResultName { public virtual long SearchResultNameId { get; set; } public virtual string Type { get; set; } public virtual string Title { get; set; } public virtual string FullName { get; set; } public virtual decimal ResultSimilarity { get; set; } } public partial class SearchResultNationality { public virtual long SearchResultNationalityId { get; set; } public virtual string Nationality { get; set; } } public partial class SearchResultOfac { public SearchResultOfac() { Addresses = new List<SearchResultOfacAddress>{}; Akas = new List<SearchResultOfacAka>{}; DateOfBirths = new List<SearchResultOfacDateOfBirth>{}; Nationalities = new List<SearchResultOfacNationality>{}; PlaceOfBirths = new List<SearchResultOfacPlaceOfBirth>{}; } public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual string FirstName { get; set; } public virtual string LastName { get; set; } public virtual List<SearchResultOfacAddress> Addresses { get; set; } public virtual List<SearchResultOfacAka> Akas { get; set; } public virtual List<SearchResultOfacDateOfBirth> DateOfBirths { get; set; } public virtual List<SearchResultOfacNationality> Nationalities { get; set; } public virtual List<SearchResultOfacPlaceOfBirth> PlaceOfBirths { get; set; } } public partial class SearchResultOfacAddress { public virtual string Address1 { get; set; } public virtual string Address2 { get; set; } public virtual string Address3 { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string PostCode { get; set; } public virtual string Country { get; set; } } public partial class SearchResultOfacAka { public virtual string FirstName { get; set; } public virtual string LastName { get; set; } public virtual string Type { get; set; } public virtual string Strength { get; set; } } public partial class SearchResultOfacDateOfBirth { public virtual string DateOfBirth { get; set; } } public partial class SearchResultOfacEuCitizenship { public virtual string Country { get; set; } } public partial class SearchResultOfacNationality { public virtual string Country { get; set; } } public partial class SearchResultOfacPlaceOfBirth { public virtual string PlaceOfBirth { get; set; } } public partial class SearchResultOsfi { public virtual int ResultStrength { get; set; } public virtual decimal ResultSimilarity { get; set; } public virtual bool ResultResolved { get; set; } public virtual string ResultType { get; set; } public virtual DateTime DateUpdated { get; set; } public virtual string FullName { get; set; } public virtual string Address { get; set; } public virtual string DateOfBirth { get; set; } public virtual string PlaceOfBirth { get; set; } public virtual string Nationality { get; set; } } public partial class SearchResultPlaceOfBirth { public virtual long SearchResultPlaceOfBirthId { get; set; } public virtual string PlaceOfBirth { get; set; } public virtual string CountryOfBirth { get; set; } } public partial class SearchResultRemark { public virtual long SearchResultRemarkId { get; set; } public virtual string Name { get; set; } public virtual string Description { get; set; } } public partial class SearchResults { public SearchResults() { EuResults = new List<SearchResultEu>{}; HMTResults = new List<SearchResultHmTreasury>{}; HMTUkraineResults = new List<SearchResultHmTreasury>{}; OfacResults = new List<SearchResultOfac>{}; OfacConsolidatedResults = new List<SearchResultOfac>{}; DfatResults = new List<SearchResultDfat>{}; OsfiResults = new List<SearchResultOsfi>{}; CanadianJusticeResults = new List<SearchResultCanadianJustice>{}; CanadianSemaResults = new List<SearchResultCanadianSema>{}; SwissSecoResults = new List<SearchResultEntry>{}; } public virtual List<SearchResultEu> EuResults { get; set; } public virtual List<SearchResultHmTreasury> HMTResults { get; set; } public virtual List<SearchResultHmTreasury> HMTUkraineResults { get; set; } public virtual List<SearchResultOfac> OfacResults { get; set; } public virtual List<SearchResultOfac> OfacConsolidatedResults { get; set; } public virtual List<SearchResultDfat> DfatResults { get; set; } public virtual List<SearchResultOsfi> OsfiResults { get; set; } public virtual List<SearchResultCanadianJustice> CanadianJusticeResults { get; set; } public virtual List<SearchResultCanadianSema> CanadianSemaResults { get; set; } public virtual List<SearchResultEntry> SwissSecoResults { get; set; } } public partial class SearchSource { public virtual string ListId { get; set; } public virtual string ListName { get; set; } public virtual string ListShortName { get; set; } public virtual bool? IsAffectedByListUpdate { get; set; } } }