DELETE | /subusers/delete | Delete a sub user |
---|
import Foundation
import ServiceStack
// @DataContract
public class DeleteSubUser : BaseRequest
{
/**
* The user id of the sub user to delete
*/
// @DataMember
// @ApiMember(Description="The user id of the sub user to delete", IsRequired=true, ParameterType="query")
public var deleteUserId:String?
/**
* The user id of the user to transfer the sub user's existing searches to
*/
// @DataMember
// @ApiMember(Description="The user id of the user to transfer the sub user's existing searches to", IsRequired=true, ParameterType="query")
public var transferToUserId:String?
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case deleteUserId
case transferToUserId
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
deleteUserId = try container.decodeIfPresent(String.self, forKey: .deleteUserId)
transferToUserId = try container.decodeIfPresent(String.self, forKey: .transferToUserId)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if deleteUserId != nil { try container.encode(deleteUserId, forKey: .deleteUserId) }
if transferToUserId != nil { try container.encode(transferToUserId, forKey: .transferToUserId) }
}
}
// @DataContract
public class BaseRequest : IBaseRequest, Codable
{
/**
* The authentication credentials
*/
// @DataMember
// @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body")
public var authentication:Authentication
required public init(){}
}
// @DataContract
public class Authentication : Codable
{
/**
* The API User ID provided by us when you signed up to use our API
*/
// @DataMember
// @ApiMember(Description="The API User ID provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body")
public var apiUserId:String
/**
* The API User Key provided by us when you signed up to use our API
*/
// @DataMember
// @ApiMember(Description="The API User Key provided by us when you signed up to use our API", IsRequired=true, ParameterType="header, body")
public var apiUserKey:String
required public init(){}
}
// @DataContract
public class DeleteSubUserResponse : Codable
{
/**
* The response data
*/
// @DataMember
// @ApiMember(Description="The response data")
public var data:DeleteSubUserData
required public init(){}
}
public class DeleteSubUserData : BaseResponse
{
/**
* Was the delete successful?
*/
// @ApiMember(Description="Was the delete successful?")
public var success:Bool
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case success
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
success = try container.decodeIfPresent(Bool.self, forKey: .success)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if success != nil { try container.encode(success, forKey: .success) }
}
}
public class BaseResponse : IBaseDataResponse, IHasResponseStatus, Codable
{
/**
* The status of the response
*/
// @ApiMember(Description="The status of the response")
public var responseStatus:ResponseStatus
required public init(){}
}
public class ArrayOfResponseError : List<ResponseError>
{
required public init(){ super.init() }
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
DELETE /subusers/delete HTTP/1.1 Host: api.sanctionssearch.com Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <DeleteSubUserResponse 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> <Success>false</Success> </Data> </DeleteSubUserResponse>