using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using SanctionsSearch.Api2.ServiceModel.Operations.DbsSearches;
using SanctionsSearch.Api2.ServiceModel.Operations.Base;
using SanctionsSearch.Api2.ServiceModel.Types;
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; }
}
[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.DbsSearches
{
[DataContract]
public partial class GetDbsSearch
: BaseRequest
{
///<summary>
///The ID of the DBS Search
///</summary>
[DataMember]
[ApiMember(Description="The ID of the DBS Search", IsRequired=true, ParameterType="path")]
public virtual int Id { get; set; }
///<summary>
///Provide a value to only return a search that the specified sub user has permission to access. If this is null or empty, then sub user permissions will not be enforced and the search will be returned
///</summary>
[DataMember]
[ApiMember(Description="Provide a value to only return a search that the specified sub user has permission to access. If this is null or empty, then sub user permissions will not be enforced and the search will be returned", ParameterType="query")]
public virtual string SubUserName { get; set; }
}
public partial class GetDbsSearchData
: BaseResponse, IBaseSearchResponse
{
public virtual ArrayOfLinkedTo LinkedTo { get; set; }
public virtual DbsSearchSummary Summary { get; set; }
}
[DataContract]
public partial class GetDbsSearchResponse
{
[DataMember]
public virtual GetDbsSearchData Data { get; set; }
}
}
namespace SanctionsSearch.Api2.ServiceModel.Types
{
public partial class ApplicantInformation
{
public virtual string Name { get; set; }
public virtual string DateOfBirth { get; set; }
public virtual string Email { get; set; }
public virtual string MobileInternational { get; set; }
public virtual string JobLocation { get; set; }
public virtual string Reference { get; set; }
}
public partial class ArrayOfLinkedTo
: List<LinkedTo>
{
}
[DataContract]
public partial class 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")]
public virtual string ApiUserId { 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")]
public virtual string ApiUserKey { get; set; }
}
public partial class DbsSearchSummary
{
public virtual long Id { get; set; }
public virtual DateTime DateSearched { get; set; }
public virtual DateTime DateUpdated { get; set; }
public virtual string Status { get; set; }
public virtual string DisclosureStatus { get; set; }
public virtual bool IsApplicantInfoCompleted { get; set; }
public virtual bool IsIdCheckCompleted { get; set; }
public virtual bool IsApplicationCompleted { get; set; }
public virtual bool IsApplicationSubmitted { get; set; }
public virtual bool IsApplicationDisclosed { get; set; }
public virtual string DisclosureLevel { get; set; }
public virtual ApplicantInformation ApplicantInformation { 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; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .soap11 suffix or ?format=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: GetDbsSearch
<?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>
<GetDbsSearch xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<Authentication>
<ApiUserId>String</ApiUserId>
<ApiUserKey>String</ApiUserKey>
</Authentication>
<Id>0</Id>
<SubUserName>String</SubUserName>
</GetDbsSearch>
</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> <GetDbsSearchResponse 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> <Summary> <ApplicantInformation> <DateOfBirth>String</DateOfBirth> <Email>String</Email> <JobLocation>String</JobLocation> <MobileInternational>String</MobileInternational> <Name>String</Name> <Reference>String</Reference> </ApplicantInformation> <DateSearched>0001-01-01T00:00:00</DateSearched> <DateUpdated>0001-01-01T00:00:00</DateUpdated> <DisclosureLevel>String</DisclosureLevel> <DisclosureStatus>String</DisclosureStatus> <Id>0</Id> <IsApplicantInfoCompleted>false</IsApplicantInfoCompleted> <IsApplicationCompleted>false</IsApplicationCompleted> <IsApplicationDisclosed>false</IsApplicationDisclosed> <IsApplicationSubmitted>false</IsApplicationSubmitted> <IsIdCheckCompleted>false</IsIdCheckCompleted> <Status>String</Status> </Summary> </Data> </GetDbsSearchResponse> </soap:Body> </soap:Envelope>