GET | /api/AdvancedCustomerSearch |
---|
import 'package:servicestack/servicestack.dart';
// @DataContract
class BaseRequest implements IConvertible
{
/**
* 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")
String? ApiKey;
// @DataMember
// @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
String? OAuthToken;
BaseRequest({this.ApiKey,this.OAuthToken});
BaseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ApiKey = json['ApiKey'];
OAuthToken = json['OAuthToken'];
return this;
}
Map<String, dynamic> toJson() => {
'ApiKey': ApiKey,
'OAuthToken': OAuthToken
};
getTypeName() => "BaseRequest";
TypeContext? context = _ctx;
}
// @DataContract
class BaseSecureRequest extends BaseRequest implements IConvertible
{
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header")
String? Token;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header")
String? DeviceId;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header")
String? AppId;
BaseSecureRequest({this.Token,this.DeviceId,this.AppId});
BaseSecureRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Token = json['Token'];
DeviceId = json['DeviceId'];
AppId = json['AppId'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Token': Token,
'DeviceId': DeviceId,
'AppId': AppId
});
getTypeName() => "BaseSecureRequest";
TypeContext? context = _ctx;
}
// @DataContract
class BaseResponseResult implements IConvertible
{
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
String? StatusCode;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
String? Login;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
String? ErrorCode;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
String? ErrorDisplayText;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
String? ErrorMessage;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
String? DomainName;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
String? IpAddress;
BaseResponseResult({this.StatusCode,this.Login,this.ErrorCode,this.ErrorDisplayText,this.ErrorMessage,this.DomainName,this.IpAddress});
BaseResponseResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
StatusCode = json['StatusCode'];
Login = json['Login'];
ErrorCode = json['ErrorCode'];
ErrorDisplayText = json['ErrorDisplayText'];
ErrorMessage = json['ErrorMessage'];
DomainName = json['DomainName'];
IpAddress = json['IpAddress'];
return this;
}
Map<String, dynamic> toJson() => {
'StatusCode': StatusCode,
'Login': Login,
'ErrorCode': ErrorCode,
'ErrorDisplayText': ErrorDisplayText,
'ErrorMessage': ErrorMessage,
'DomainName': DomainName,
'IpAddress': IpAddress
};
getTypeName() => "BaseResponseResult";
TypeContext? context = _ctx;
}
// @DataContract
class BaseResponse implements IConvertible
{
/**
*
*/
// @DataMember
// @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
BaseResponseResult? Status;
BaseResponse({this.Status});
BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Status = JsonConverters.fromJson(json['Status'],'BaseResponseResult',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Status': JsonConverters.toJson(Status,'BaseResponseResult',context!)
};
getTypeName() => "BaseResponse";
TypeContext? context = _ctx;
}
// @DataContract
class AdvancedCustomerSearchRecord implements IConvertible
{
// @DataMember
int? Acct;
// @DataMember
int? Sub;
// @DataMember
String? Name;
// @DataMember
String? ResultType;
// @DataMember
String? ResultDetail;
// @DataMember
DateTime? DateTime;
// @DataMember
double? Amount;
AdvancedCustomerSearchRecord({this.Acct,this.Sub,this.Name,this.ResultType,this.ResultDetail,this.DateTime,this.Amount});
AdvancedCustomerSearchRecord.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Acct = json['Acct'];
Sub = json['Sub'];
Name = json['Name'];
ResultType = json['ResultType'];
ResultDetail = json['ResultDetail'];
DateTime = JsonConverters.fromJson(json['DateTime'],'DateTime',context!);
Amount = JsonConverters.toDouble(json['Amount']);
return this;
}
Map<String, dynamic> toJson() => {
'Acct': Acct,
'Sub': Sub,
'Name': Name,
'ResultType': ResultType,
'ResultDetail': ResultDetail,
'DateTime': JsonConverters.toJson(DateTime,'DateTime',context!),
'Amount': Amount
};
getTypeName() => "AdvancedCustomerSearchRecord";
TypeContext? context = _ctx;
}
// @DataContract
class AdvancedCustomerSearchResponse extends BaseResponse implements IConvertible
{
// @DataMember
int? RemainingRecords;
// @DataMember
List<AdvancedCustomerSearchRecord>? Customers;
AdvancedCustomerSearchResponse({this.RemainingRecords,this.Customers});
AdvancedCustomerSearchResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
RemainingRecords = json['RemainingRecords'];
Customers = JsonConverters.fromJson(json['Customers'],'List<AdvancedCustomerSearchRecord>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'RemainingRecords': RemainingRecords,
'Customers': JsonConverters.toJson(Customers,'List<AdvancedCustomerSearchRecord>',context!)
});
getTypeName() => "AdvancedCustomerSearchResponse";
TypeContext? context = _ctx;
}
/**
* AdvancedCustomerSearchRequires active-e Customer Service.
*/
// @DataContract
class AdvancedCustomerSearchRequest extends BaseSecureRequest implements IConvertible
{
/**
* The type of advanced search. Options are SUBACCOUNT (Students and Dependents), CHECK (Exact Check# lookup), and CREDITCARD (Last 4 lookup)
*/
// @DataMember
// @ApiMember(DataType="string", Description="The type of advanced search. Options are SUBACCOUNT (Students and Dependents), CHECK (Exact Check# lookup), and CREDITCARD (Last 4 lookup)", IsRequired=true, Name="SearchType")
String? SearchType;
/**
* What to search for
*/
// @DataMember
// @ApiMember(DataType="string", Description="What to search for", IsRequired=true, Name="SearchString")
String? SearchString;
/**
* The Starting Offset. Defaults to 0 if not sent.
*/
// @DataMember
// @ApiMember(DataType="integer", Description="The Starting Offset. Defaults to 0 if not sent.", Format="int64", Name="StartOffset")
int? StartOffset;
/**
* The # of records to be returned. Defaults to 100 if not sent.
*/
// @DataMember
// @ApiMember(DataType="integer", Description="The # of records to be returned. Defaults to 100 if not sent.", Format="int64", Name="RecordCount")
int? RecordCount;
AdvancedCustomerSearchRequest({this.SearchType,this.SearchString,this.StartOffset,this.RecordCount});
AdvancedCustomerSearchRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
SearchType = json['SearchType'];
SearchString = json['SearchString'];
StartOffset = json['StartOffset'];
RecordCount = json['RecordCount'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'SearchType': SearchType,
'SearchString': SearchString,
'StartOffset': StartOffset,
'RecordCount': RecordCount
});
getTypeName() => "AdvancedCustomerSearchRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'active_ewebservice.biz', types: <String, TypeInfo> {
'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()),
'BaseSecureRequest': TypeInfo(TypeOf.Class, create:() => BaseSecureRequest()),
'BaseResponseResult': TypeInfo(TypeOf.Class, create:() => BaseResponseResult()),
'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
'AdvancedCustomerSearchRecord': TypeInfo(TypeOf.Class, create:() => AdvancedCustomerSearchRecord()),
'AdvancedCustomerSearchResponse': TypeInfo(TypeOf.Class, create:() => AdvancedCustomerSearchResponse()),
'List<AdvancedCustomerSearchRecord>': TypeInfo(TypeOf.Class, create:() => <AdvancedCustomerSearchRecord>[]),
'AdvancedCustomerSearchRequest': TypeInfo(TypeOf.Class, create:() => AdvancedCustomerSearchRequest()),
});
Dart AdvancedCustomerSearchRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /api/AdvancedCustomerSearch HTTP/1.1 Host: active-ewebservice.biz Accept: application/json
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"RemainingRecords":0,"Customers":[{"Acct":0,"Sub":0,"Name":"String","ResultType":"String","ResultDetail":"String","DateTime":"0001-01-01T00:00:00.0000000","Amount":0}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}