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
<DataContract>
Public Partial Class UpdateSubUser
Inherits BaseRequest
<DataMember>
Public Overridable Property Request As UpdateSubUserRequest
End Class
Public Partial Class UpdateSubUserData
Inherits BaseResponse
'''<Summary>
'''The sub user
'''</Summary>
<ApiMember(Description:="The sub user")>
Public Overridable Property SubUser As SubUser
End Class
Public Partial Class UpdateSubUserRequest
'''<Summary>
'''The user name of the sub user
'''</Summary>
<ApiMember(Description:="The user name of the sub user", IsRequired:=true)>
Public Overridable Property SubUserName As String
'''<Summary>
'''The user names for which searches will be made available to the sub user
'''</Summary>
<ApiMember(Description:="The user names for which searches will be made available to the sub user")>
Public Overridable Property Permissions As ArrayOfString
End Class
<DataContract>
Public Partial Class UpdateSubUserResponse
'''<Summary>
'''The response data
'''</Summary>
<DataMember>
<ApiMember(Description:="The response data")>
Public Overridable Property Data As UpdateSubUserData
End Class
End Namespace
Namespace SanctionsSearch.Api2.ServiceModel.Operations.Base
Public Partial Class ArrayOfResponseError
Inherits List(Of ResponseError)
End Class
<DataContract>
Public Partial Class BaseRequest
Implements IBaseRequest
'''<Summary>
'''The authentication credentials
'''</Summary>
<DataMember>
<ApiMember(Description:="The authentication credentials", IsRequired:=true, ParameterType:="header, body")>
Public Overridable Property Authentication As Authentication
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 ArrayOfUserNames
Inherits List(Of String)
End Class
<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 Overridable Property ApiUserId As String
'''<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 Overridable Property ApiUserKey As String
End Class
Public Partial Class SubUser
'''<Summary>
'''Is this user the main user (i.e. the user who created the account)
'''</Summary>
<ApiMember(Description:="Is this user the main user (i.e. the user who created the account)")>
Public Overridable Property IsMainUser As Boolean
'''<Summary>
'''The sub user's id (GUID)
'''</Summary>
<ApiMember(Description:="The sub user's id (GUID)")>
Public Overridable Property UserId As Guid
'''<Summary>
'''The sub user's UserName (i.e. the sign-in username)
'''</Summary>
<ApiMember(Description:="The sub user's UserName (i.e. the sign-in username)")>
Public Overridable Property UserName As String
'''<Summary>
'''The sub user's name
'''</Summary>
<ApiMember(Description:="The sub user's name")>
Public Overridable Property Name As String
'''<Summary>
'''The sub user's email address
'''</Summary>
<ApiMember(Description:="The sub user's email address")>
Public Overridable Property Email As String
'''<Summary>
'''Does this sub user have admin privileges, such as managing purchases and sub users
'''</Summary>
<ApiMember(Description:="Does this sub user have admin privileges, such as managing purchases and sub users")>
Public Overridable Property IsAdmin As Boolean
'''<Summary>
'''Can this sub user resolve searches (UpdateSearch) they have access to
'''</Summary>
<ApiMember(Description:="Can this sub user resolve searches (UpdateSearch) they have access to")>
Public Overridable Property CanResolveSearches As Boolean
'''<Summary>
'''Can this sub user delete searches (DeleteSearch) they have access to
'''</Summary>
<ApiMember(Description:="Can this sub user delete searches (DeleteSearch) they have access to")>
Public Overridable Property CanDeleteSearches As Boolean
'''<Summary>
'''The user names for which searches will be made available to the sub user
'''</Summary>
<ApiMember(Description:="The user names for which searches will be made available to the sub user")>
Public Overridable Property Permissions As ArrayOfUserNames
End Class
End Namespace
Namespace ServiceStack
Public Partial Class ArrayOfString
Inherits List(Of String)
End Class
End Namespace
End Namespace
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: UpdateSubUser
<?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>
<UpdateSubUser xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<Authentication>
<ApiUserId>String</ApiUserId>
<ApiUserKey>String</ApiUserKey>
</Authentication>
<Request>
<Permissions>
<String>String</String>
</Permissions>
<SubUserName>String</SubUserName>
</Request>
</UpdateSubUser>
</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> <UpdateSubUserResponse 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> <SubUser> <CanDeleteSearches>false</CanDeleteSearches> <CanResolveSearches>false</CanResolveSearches> <Email>String</Email> <IsAdmin>false</IsAdmin> <IsMainUser>false</IsMainUser> <Name>String</Name> <Permissions> <UserName>String</UserName> </Permissions> <UserId>00000000-0000-0000-0000-000000000000</UserId> <UserName>String</UserName> </SubUser> </Data> </UpdateSubUserResponse> </soap:Body> </soap:Envelope>