Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports SanctionsSearch.Api2.ServiceModel.Operations.Account
Imports SanctionsSearch.Api2.ServiceModel.Operations.Base
Imports SanctionsSearch.Api2.ServiceModel.Types
Namespace Global
Namespace SanctionsSearch.Api2.ServiceModel.Operations.Account
Public Partial Class ReferenceData
'''<Summary>
'''A list of supported country values
'''</Summary>
<ApiMember(Description:="A list of supported country values")>
Public Overridable Property Countries As ArrayOfCountry
'''<Summary>
'''A list of valid industry classifications for companies
'''</Summary>
<ApiMember(Description:="A list of valid industry classifications for companies")>
Public Overridable Property CompanyIndustries As ArrayOfCompanyIndustry
'''<Summary>
'''A list of accepted company types
'''</Summary>
<ApiMember(Description:="A list of accepted company types")>
Public Overridable Property CompanyTypes As ArrayOfCompanyType
'''<Summary>
'''A list of countries where VAT registration is recognized
'''</Summary>
<ApiMember(Description:="A list of countries where VAT registration is recognized")>
Public Overridable Property VATCountries As ArrayOfVATCountry
'''<Summary>
'''A URL linking to the terms and conditions document
'''</Summary>
<ApiMember(Description:="A URL linking to the terms and conditions document")>
Public Overridable Property TermsAndConditionsLink As String
'''<Summary>
'''A URL linking to the privacy policy
'''</Summary>
<ApiMember(Description:="A URL linking to the privacy policy")>
Public Overridable Property PrivacyPolicyLink As String
'''<Summary>
'''The statement regarding contact preferences
'''</Summary>
<ApiMember(Description:="The statement regarding contact preferences")>
Public Overridable Property ContactStatement As String
'''<Summary>
'''The statement outlining data protection policies
'''</Summary>
<ApiMember(Description:="The statement outlining data protection policies")>
Public Overridable Property DataProtectionStatement As String
End Class
Public Partial Class RegisterAccountRequest
'''<Summary>
'''The desired login username for the account
'''</Summary>
<ApiMember(Description:="The desired login username for the account", IsRequired:=true)>
Public Overridable Property Username As String
'''<Summary>
'''The password for account login
'''</Summary>
<ApiMember(Description:="The password for account login", IsRequired:=true)>
Public Overridable Property Password As String
'''<Summary>
'''The contact email address for the account holder
'''</Summary>
<ApiMember(Description:="The contact email address for the account holder", IsRequired:=true)>
Public Overridable Property Email As String
'''<Summary>
'''The full legal name of the account holder
'''</Summary>
<ApiMember(Description:="The full legal name of the account holder", IsRequired:=true)>
Public Overridable Property FullName As String
'''<Summary>
'''The registered name of the company associated with this account
'''</Summary>
<ApiMember(Description:="The registered name of the company associated with this account", IsRequired:=true)>
Public Overridable Property CompanyName As String
'''<Summary>
'''The primary contact phone number of the company
'''</Summary>
<ApiMember(Description:="The primary contact phone number of the company", IsRequired:=true)>
Public Overridable Property CompanyPhone As String
'''<Summary>
'''The first line of the company’s address (e.g., street name and number)
'''</Summary>
<ApiMember(Description:="The first line of the company’s address (e.g., street name and number)", IsRequired:=true)>
Public Overridable Property Address1 As String
'''<Summary>
'''The second line of the company’s address (optional)
'''</Summary>
<ApiMember(Description:="The second line of the company’s address (optional)")>
Public Overridable Property Address2 As String
'''<Summary>
'''The third line of the company’s address (optional)
'''</Summary>
<ApiMember(Description:="The third line of the company’s address (optional)")>
Public Overridable Property Address3 As String
'''<Summary>
'''The city where the company is located (optional)
'''</Summary>
<ApiMember(Description:="The city where the company is located (optional)")>
Public Overridable Property City As String
'''<Summary>
'''The postal or ZIP code of the company’s address
'''</Summary>
<ApiMember(Description:="The postal or ZIP code of the company’s address", IsRequired:=true)>
Public Overridable Property Postcode As String
'''<Summary>
'''The country where the company is registered
'''</Summary>
<ApiMember(Description:="The country where the company is registered", IsRequired:=true)>
Public Overridable Property Country As String
'''<Summary>
'''The classification of the company (e.g., LLC, Corporation, Sole Proprietorship)
'''</Summary>
<ApiMember(Description:="The classification of the company (e.g., LLC, Corporation, Sole Proprietorship)", IsRequired:=true)>
Public Overridable Property CompanyType As String
'''<Summary>
'''The industry sector the company operates in
'''</Summary>
<ApiMember(Description:="The industry sector the company operates in", IsRequired:=true)>
Public Overridable Property CompanyIndustry As String
'''<Summary>
'''The trade body, network, or affiliation the company is a member of (if applicable)
'''</Summary>
<ApiMember(Description:="The trade body, network, or affiliation the company is a member of (if applicable)")>
Public Overridable Property CompanyNetwork As String
'''<Summary>
'''Indicates agreement to the terms and conditions (required)
'''</Summary>
<ApiMember(Description:="Indicates agreement to the terms and conditions (required)", IsRequired:=true)>
Public Overridable Property AgreeToTerms As Boolean
'''<Summary>
'''Indicates agreement to the data protection statement (required)
'''</Summary>
<ApiMember(Description:="Indicates agreement to the data protection statement (required)", IsRequired:=true)>
Public Overridable Property AgreeToDataProtection As Boolean
'''<Summary>
'''Indicates consent to be contacted (optional)
'''</Summary>
<ApiMember(Description:="Indicates consent to be contacted (optional)")>
Public Overridable Property AgreeToContact As Boolean
'''<Summary>
'''Indicates agreement to the privacy policy (required)
'''</Summary>
<ApiMember(Description:="Indicates agreement to the privacy policy (required)", IsRequired:=true)>
Public Overridable Property AgreeToPrivacy As Boolean
'''<Summary>
'''An optional voucher code for discounts or promotions
'''</Summary>
<ApiMember(Description:="An optional voucher code for discounts or promotions")>
Public Overridable Property VoucherCode As String
'''<Summary>
'''An optional code that grants access to certain features or subscriptions
'''</Summary>
<ApiMember(Description:="An optional code that grants access to certain features or subscriptions")>
Public Overridable Property AccountActivationCode As String
'''<Summary>
'''The company's VAT registration number (if applicable)
'''</Summary>
<ApiMember(Description:="The company's VAT registration number (if applicable)")>
Public Overridable Property VATNumber As String
'''<Summary>
'''The country where the company is VAT-registered
'''</Summary>
<ApiMember(Description:="The country where the company is VAT-registered")>
Public Overridable Property VATCountry As String
End Class
<DataContract>
Public Partial Class RegisterAccountTemplate
End Class
Public Partial Class RegisterAccountTemplateData
Inherits BaseResponse
'''<Summary>
'''The request body of the RegisterAccount endpoint
'''</Summary>
<ApiMember(Description:="The request body of the RegisterAccount endpoint")>
Public Overridable Property Request As RegisterAccountRequest
'''<Summary>
'''Reference data to fill out the RegisterAccount body
'''</Summary>
<ApiMember(Description:="Reference data to fill out the RegisterAccount body")>
Public Overridable Property ReferenceData As ReferenceData
End Class
<DataContract>
Public Partial Class RegisterAccountTemplateResponse
'''<Summary>
'''The response data
'''</Summary>
<DataMember>
<ApiMember(Description:="The response data")>
Public Overridable Property Data As RegisterAccountTemplateData
End Class
End Namespace
Namespace SanctionsSearch.Api2.ServiceModel.Operations.Base
Public Partial Class ArrayOfResponseError
Inherits List(Of ResponseError)
End Class
Public Partial Class BaseResponse
Implements IBaseDataResponse
Implements IHasResponseStatus
'''<Summary>
'''The status of the response
'''</Summary>
<ApiMember(Description:="The status of the response")>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
<DataContract>
Public Partial Class ResponseError
Public Sub New()
Meta = New Dictionary(Of String, String)
End Sub
<DataMember(Order:=1)>
Public Overridable Property ErrorCode As String
<DataMember(Order:=2)>
Public Overridable Property FieldName As String
<DataMember(Order:=3)>
Public Overridable Property Message As String
<DataMember(Order:=4)>
Public Overridable Property Meta As Dictionary(Of String, String)
End Class
<DataContract>
Public Partial Class ResponseStatus
Public Sub New()
Meta = New Dictionary(Of String, String)
End Sub
<DataMember(Order:=1)>
Public Overridable Property ErrorCode As String
<DataMember(Order:=2)>
Public Overridable Property Message As String
<DataMember(Order:=3)>
Public Overridable Property StackTrace As String
<DataMember(Order:=4)>
Public Overridable Property Errors As ArrayOfResponseError
<DataMember(Order:=5)>
Public Overridable Property Meta As Dictionary(Of String, String)
End Class
End Namespace
Namespace SanctionsSearch.Api2.ServiceModel.Types
Public Partial Class ArrayOfCompanyIndustry
Inherits List(Of String)
End Class
Public Partial Class ArrayOfCompanyType
Inherits List(Of String)
End Class
Public Partial Class ArrayOfCountry
Inherits List(Of String)
End Class
Public Partial Class ArrayOfVATCountry
Inherits List(Of String)
End Class
End Namespace
End Namespace
VB.NET RegisterAccountTemplate DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .soap12 suffix or ?format=soap12
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /soap12 HTTP/1.1
Host: api.sanctionssearch.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<RegisterAccountTemplate xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types" />
</soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Body> <RegisterAccountTemplateResponse 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> <ReferenceData> <CompanyIndustries> <CompanyIndustry>String</CompanyIndustry> </CompanyIndustries> <CompanyTypes> <CompanyType>String</CompanyType> </CompanyTypes> <ContactStatement>String</ContactStatement> <Countries> <Country>String</Country> </Countries> <DataProtectionStatement>String</DataProtectionStatement> <PrivacyPolicyLink>String</PrivacyPolicyLink> <TermsAndConditionsLink>String</TermsAndConditionsLink> <VATCountries> <VATCountry>String</VATCountry> </VATCountries> </ReferenceData> <Request> <AccountActivationCode>String</AccountActivationCode> <Address1>String</Address1> <Address2>String</Address2> <Address3>String</Address3> <AgreeToContact>false</AgreeToContact> <AgreeToDataProtection>false</AgreeToDataProtection> <AgreeToPrivacy>false</AgreeToPrivacy> <AgreeToTerms>false</AgreeToTerms> <City>String</City> <CompanyIndustry>String</CompanyIndustry> <CompanyName>String</CompanyName> <CompanyNetwork>String</CompanyNetwork> <CompanyPhone>String</CompanyPhone> <CompanyType>String</CompanyType> <Country>String</Country> <Email>String</Email> <FullName>String</FullName> <Password>String</Password> <Postcode>String</Postcode> <Username>String</Username> <VATCountry>String</VATCountry> <VATNumber>String</VATNumber> <VoucherCode>String</VoucherCode> </Request> </Data> </RegisterAccountTemplateResponse> </soap12:Body> </soap12:Envelope>