AIM Web Services

<back to all web services

SecurityItemsRequest

SecurityItems
Requires active-e Service.

The following routes are available for this service:
GET/api/SecurityItems
import Foundation
import ServiceStack

/**
* SecurityItemsRequires active-e Service.
*/
// @DataContract
public class SecurityItemsRequest : BaseSecureRequest
{
    /**
    * Can be ALL to return all security items, HAS to return all items the logged in user has permissions for, or LACKS to return all items the logged in user lacks permissons for. Defaults to HAS if not sent.
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="Can be ALL to return all security items, HAS to return all items the logged in user has permissions for, or LACKS to return all items the logged in user lacks permissons for. Defaults to HAS if not sent.", Name="Mode")
    public var mode:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case mode
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        mode = try container.decodeIfPresent(String.self, forKey: .mode)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if mode != nil { try container.encode(mode, forKey: .mode) }
    }
}

// @DataContract
public class BaseSecureRequest : BaseRequest
{
    /**
    * The Login Token return by the Security API. Required for secured calls.
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="The Login Token return by the Security API. Required for secured calls.", Name="Token", ParameterType="Header")
    public var token:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case token
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        token = try container.decodeIfPresent(String.self, forKey: .token)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if token != nil { try container.encode(token, forKey: .token) }
    }
}

// @DataContract
public class BaseRequest : Codable
{
    /**
    * This is your AIM API Key provided by Tri-Tech
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="Header")
    public var apiKey:String

    /**
    * The OAuthToken token return by AeServices30
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="The OAuthToken token return by AeServices30", IsRequired=true, Name="OAuthToken", ParameterType="Header")
    public var oAuthToken:String

    /**
    * The Device ID of the Mobile Device. Not used for non-mobile devices.
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="The Device ID of the Mobile Device. Not used for non-mobile devices.", Name="DeviceId", ParameterType="Header")
    public var deviceId:String

    /**
    * An identifier for your integration
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="An identifier for your integration", IsRequired=true, Name="AppId", ParameterType="Header")
    public var appId:String

    required public init(){}
}

// @DataContract
public class SecurityItemsResponse : BaseResponse
{
    // @DataMember
    public var items:[SecurityItemInfo] = []

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case items
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        items = try container.decodeIfPresent([SecurityItemInfo].self, forKey: .items) ?? []
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if items.count > 0 { try container.encode(items, forKey: .items) }
    }
}

// @DataContract
public class BaseResponse : Codable
{
    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
    public var status:BaseResponseResult

    required public init(){}
}

// @DataContract
public class BaseResponseResult : Codable
{
    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
    public var statusCode:String

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
    public var login:String

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
    public var errorCode:String

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
    public var errorDisplayText:String

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
    public var errorMessage:String

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
    public var domainName:String

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
    public var ipAddress:String

    required public init(){}
}

// @DataContract
public class SecurityItemInfo : Codable
{
    // @DataMember
    public var securityId:String

    // @DataMember
    public var Description:String

    required public init(){}
}


Swift SecurityItemsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /api/SecurityItems HTTP/1.1 
Host: active-ewebservice.biz 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<SecurityItemsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
  <Status>
    <DomainName>String</DomainName>
    <ErrorCode>String</ErrorCode>
    <ErrorDisplayText>String</ErrorDisplayText>
    <ErrorMessage>String</ErrorMessage>
    <IpAddress>String</IpAddress>
    <Login>String</Login>
    <StatusCode>String</StatusCode>
  </Status>
  <Items>
    <SecurityItemInfo>
      <Description>String</Description>
      <SecurityId>String</SecurityId>
    </SecurityItemInfo>
  </Items>
</SecurityItemsResponse>