POST | /api/Security | ||
---|---|---|---|
POST | /api/Security/{token} |
"use strict";
export class BaseRequest {
/** @param {{ApiKey?:string,OAuthToken?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description This is your AIM API Key provided by Tri-Tech */
ApiKey;
/** @type {string} */
OAuthToken;
}
export class BaseResponseResult {
/** @param {{StatusCode?:string,Login?:string,ErrorCode?:string,ErrorDisplayText?:string,ErrorMessage?:string,DomainName?:string,IpAddress?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
StatusCode;
/** @type {string} */
Login;
/** @type {string} */
ErrorCode;
/** @type {string} */
ErrorDisplayText;
/** @type {string} */
ErrorMessage;
/** @type {string} */
DomainName;
/** @type {string} */
IpAddress;
}
export class BaseResponse {
/** @param {{Status?:BaseResponseResult}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {BaseResponseResult} */
Status;
}
export class UserDetail {
/** @param {{Firstname?:string,LastName?:string,Email?:string,Type?:string,Location?:string,LocationName?:string,AccountNumber?:number,TaxAuthority?:string,TaxAuthorityName?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Firstname;
/** @type {string} */
LastName;
/** @type {string} */
Email;
/** @type {string} */
Type;
/** @type {string} */
Location;
/** @type {string} */
LocationName;
/** @type {?number} */
AccountNumber;
/** @type {string} */
TaxAuthority;
/** @type {string} */
TaxAuthorityName;
}
export class AccountDetail {
/** @param {{Acct?:number,AcctType?:string,Name?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Acct;
/** @type {string} */
AcctType;
/** @type {string} */
Name;
}
export class SecurityResponse extends BaseResponse {
/** @param {{Token?:string,OAuthToken?:string,Domain?:string,IsAdmin?:boolean,UserDetails?:UserDetail,AccountDetails?:AccountDetail[],Status?:BaseResponseResult}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Token;
/** @type {string} */
OAuthToken;
/** @type {string} */
Domain;
/** @type {boolean} */
IsAdmin;
/** @type {UserDetail} */
UserDetails;
/** @type {AccountDetail[]} */
AccountDetails;
}
export class SecurityRequest extends BaseRequest {
/** @param {{Username?:string,Token?:string,Password?:string,DeviceID?:string,AppID?:string,Acct?:number,DeviceName?:string,ApiKey?:string,OAuthToken?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description Employee ID or Customer Email */
Username;
/**
* @type {string}
* @description Existing Token */
Token;
/**
* @type {string}
* @description Password of Employee or User */
Password;
/** @type {string} */
DeviceID;
/** @type {string} */
AppID;
/** @type {?number} */
Acct;
/** @type {string} */
DeviceName;
}
JavaScript SecurityRequest DTOs
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.
POST /api/Security HTTP/1.1
Host: active-ewebservice.biz
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SecurityRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
<ApiKey>String</ApiKey>
<OAuthToken>String</OAuthToken>
<Acct>0</Acct>
<AppID>String</AppID>
<DeviceID>String</DeviceID>
<DeviceName>String</DeviceName>
<Password>String</Password>
<Token>String</Token>
<Username>String</Username>
</SecurityRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <SecurityResponse 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> <AccountDetails> <AccountDetail> <Acct>0</Acct> <AcctType>String</AcctType> <Name>String</Name> </AccountDetail> </AccountDetails> <Domain>String</Domain> <IsAdmin>false</IsAdmin> <OAuthToken>String</OAuthToken> <Token>String</Token> <UserDetails> <AccountNumber>0</AccountNumber> <Email>String</Email> <Firstname>String</Firstname> <LastName>String</LastName> <Location>String</Location> <LocationName>String</LocationName> <TaxAuthority>String</TaxAuthority> <TaxAuthorityName>String</TaxAuthorityName> <Type>String</Type> </UserDetails> </SecurityResponse>