POST | /api/UpdateCustomer |
---|
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 UpdateCustomerResponse extends BaseResponse implements IConvertible
{
UpdateCustomerResponse();
UpdateCustomerResponse.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "UpdateCustomerResponse";
TypeContext? context = _ctx;
}
// @DataContract
class LicenseInfo implements IConvertible
{
// @DataMember
String? Number;
// @DataMember
String? Height;
// @DataMember
String? Weight;
// @DataMember
String? Hair;
// @DataMember
String? Eyes;
// @DataMember
String? Expiration;
// @DataMember
String? Birthday;
// @DataMember
String? Ethnicity;
// @DataMember
String? Gender;
// @DataMember
String? State;
LicenseInfo({this.Number,this.Height,this.Weight,this.Hair,this.Eyes,this.Expiration,this.Birthday,this.Ethnicity,this.Gender,this.State});
LicenseInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Number = json['Number'];
Height = json['Height'];
Weight = json['Weight'];
Hair = json['Hair'];
Eyes = json['Eyes'];
Expiration = json['Expiration'];
Birthday = json['Birthday'];
Ethnicity = json['Ethnicity'];
Gender = json['Gender'];
State = json['State'];
return this;
}
Map<String, dynamic> toJson() => {
'Number': Number,
'Height': Height,
'Weight': Weight,
'Hair': Hair,
'Eyes': Eyes,
'Expiration': Expiration,
'Birthday': Birthday,
'Ethnicity': Ethnicity,
'Gender': Gender,
'State': State
};
getTypeName() => "LicenseInfo";
TypeContext? context = _ctx;
}
// @DataContract(Name="FormInput")
class FormInput implements IConvertible
{
/**
* Field Name of the Input Field
*/
// @DataMember
// @ApiMember(DataType="string", Description="Field Name of the Input Field", IsRequired=true, Name="Key", ParameterType="query")
String? Key;
/**
* Value of the Input Field.
*/
// @DataMember
// @ApiMember(DataType="string", Description="Value of the Input Field.", IsRequired=true, Name="Value", ParameterType="query")
String? Value;
/**
* Whether or not the field is encryped with the C2B encryption key.
*/
// @DataMember
// @ApiMember(DataType="boolean", Description="Whether or not the field is encryped with the C2B encryption key.", IsRequired=true, Name="Encrypted", ParameterType="query")
bool? Encrypted;
FormInput({this.Key,this.Value,this.Encrypted});
FormInput.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Key = json['Key'];
Value = json['Value'];
Encrypted = json['Encrypted'];
return this;
}
Map<String, dynamic> toJson() => {
'Key': Key,
'Value': Value,
'Encrypted': Encrypted
};
getTypeName() => "FormInput";
TypeContext? context = _ctx;
}
/**
* UpdateCustomerRequires active-e Customer Service.
*/
// @DataContract
class UpdateCustomerRequest extends BaseSecureRequest implements IConvertible
{
/**
* Customer Acct #
*/
// @DataMember
// @ApiMember(DataType="integer", Description="Customer Acct #", Format="int32", IsRequired=true, Name="Acct", ParameterType="query")
int? Acct;
/**
* Location ID
*/
// @DataMember
// @ApiMember(DataType="integer", Description="Location ID", Format="int64", Name="LocationId", ParameterType="query")
int? LocationId;
/**
* Customer Default Id
*/
// @DataMember
// @ApiMember(DataType="integer", Description="Customer Default Id", Format="int64", Name="CustomerDefaultId", ParameterType="query")
int? CustomerDefaultId;
/**
* Tax Authority Id
*/
// @DataMember
// @ApiMember(DataType="integer", Description="Tax Authority Id", Format="int64", Name="TaxAuthorityId", ParameterType="query")
int? TaxAuthorityId;
// @DataMember
String? Name;
// @DataMember
String? Attn;
// @DataMember
String? Address1;
// @DataMember
String? Address2;
// @DataMember
String? City;
// @DataMember
String? State;
// @DataMember
String? Zip;
// @DataMember
String? Country;
// @DataMember
String? HomePhone;
// @DataMember
String? WorkPhone;
// @DataMember
String? CellPhone;
// @DataMember
String? Employer;
// @DataMember
String? SS;
// @DataMember
String? Email;
/**
* Email Method. Set this to Word, PDF, HTML, or None
*/
// @DataMember
// @ApiMember(DataType="string", Description="Email Method. Set this to Word, PDF, HTML, or None", Name="EmailMethod", ParameterType="query")
String? EmailMethod;
// @DataMember
String? Notes;
// @DataMember
LicenseInfo? DriversLicenseInfo;
/**
* If TRUE, all applicable settings from the customer default will be copied over to the customer. Generally only used when changing the customer default.
*/
// @DataMember
// @ApiMember(DataType="bool", Description="If TRUE, all applicable settings from the customer default will be copied over to the customer. Generally only used when changing the customer default.", Name="RefreshCustomerDefaults", ParameterType="query")
bool? RefreshCustomerDefaults;
/**
*
*/
// @DataMember
// @ApiMember(DataType="array", Description="", Name="FormInputList", ParameterType="query")
List<FormInput>? FormInputList;
UpdateCustomerRequest({this.Acct,this.LocationId,this.CustomerDefaultId,this.TaxAuthorityId,this.Name,this.Attn,this.Address1,this.Address2,this.City,this.State,this.Zip,this.Country,this.HomePhone,this.WorkPhone,this.CellPhone,this.Employer,this.SS,this.Email,this.EmailMethod,this.Notes,this.DriversLicenseInfo,this.RefreshCustomerDefaults,this.FormInputList});
UpdateCustomerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Acct = json['Acct'];
LocationId = json['LocationId'];
CustomerDefaultId = json['CustomerDefaultId'];
TaxAuthorityId = json['TaxAuthorityId'];
Name = json['Name'];
Attn = json['Attn'];
Address1 = json['Address1'];
Address2 = json['Address2'];
City = json['City'];
State = json['State'];
Zip = json['Zip'];
Country = json['Country'];
HomePhone = json['HomePhone'];
WorkPhone = json['WorkPhone'];
CellPhone = json['CellPhone'];
Employer = json['Employer'];
SS = json['SS'];
Email = json['Email'];
EmailMethod = json['EmailMethod'];
Notes = json['Notes'];
DriversLicenseInfo = JsonConverters.fromJson(json['DriversLicenseInfo'],'LicenseInfo',context!);
RefreshCustomerDefaults = json['RefreshCustomerDefaults'];
FormInputList = JsonConverters.fromJson(json['FormInputList'],'List<FormInput>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Acct': Acct,
'LocationId': LocationId,
'CustomerDefaultId': CustomerDefaultId,
'TaxAuthorityId': TaxAuthorityId,
'Name': Name,
'Attn': Attn,
'Address1': Address1,
'Address2': Address2,
'City': City,
'State': State,
'Zip': Zip,
'Country': Country,
'HomePhone': HomePhone,
'WorkPhone': WorkPhone,
'CellPhone': CellPhone,
'Employer': Employer,
'SS': SS,
'Email': Email,
'EmailMethod': EmailMethod,
'Notes': Notes,
'DriversLicenseInfo': JsonConverters.toJson(DriversLicenseInfo,'LicenseInfo',context!),
'RefreshCustomerDefaults': RefreshCustomerDefaults,
'FormInputList': JsonConverters.toJson(FormInputList,'List<FormInput>',context!)
});
getTypeName() => "UpdateCustomerRequest";
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()),
'UpdateCustomerResponse': TypeInfo(TypeOf.Class, create:() => UpdateCustomerResponse()),
'LicenseInfo': TypeInfo(TypeOf.Class, create:() => LicenseInfo()),
'FormInput': TypeInfo(TypeOf.Class, create:() => FormInput()),
'UpdateCustomerRequest': TypeInfo(TypeOf.Class, create:() => UpdateCustomerRequest()),
'List<FormInput>': TypeInfo(TypeOf.Class, create:() => <FormInput>[]),
});
Dart UpdateCustomerRequest 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/UpdateCustomer HTTP/1.1
Host: active-ewebservice.biz
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateCustomerRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
<ApiKey>String</ApiKey>
<OAuthToken>String</OAuthToken>
<AppId>String</AppId>
<DeviceId>String</DeviceId>
<Token>String</Token>
<Acct>0</Acct>
<Address1>String</Address1>
<Address2>String</Address2>
<Attn>String</Attn>
<CellPhone>String</CellPhone>
<City>String</City>
<Country>String</Country>
<CustomerDefaultId>0</CustomerDefaultId>
<DriversLicenseInfo>
<Birthday>String</Birthday>
<Ethnicity>String</Ethnicity>
<Expiration>String</Expiration>
<Eyes>String</Eyes>
<Gender>String</Gender>
<Hair>String</Hair>
<Height>String</Height>
<Number>String</Number>
<State>String</State>
<Weight>String</Weight>
</DriversLicenseInfo>
<Email>String</Email>
<EmailMethod>String</EmailMethod>
<Employer>String</Employer>
<FormInputList>
<FormInput>
<Encrypted>false</Encrypted>
<Key>String</Key>
<Value>String</Value>
</FormInput>
</FormInputList>
<HomePhone>String</HomePhone>
<LocationId>0</LocationId>
<Name>String</Name>
<Notes>String</Notes>
<RefreshCustomerDefaults>false</RefreshCustomerDefaults>
<SS>String</SS>
<State>String</State>
<TaxAuthorityId>0</TaxAuthorityId>
<WorkPhone>String</WorkPhone>
<Zip>String</Zip>
</UpdateCustomerRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <UpdateCustomerResponse 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> </UpdateCustomerResponse>